<van-pull-refresh v-model="refreshing" class="refresh" @refresh="onRefresh">
<van-list
v-model="loading"
:finished="finished"
:offset="50"
@load="onLoad"
>
<van-search
v-model="searchText"
placeholder="请输入搜索关键词"
shape="round"
@blur="onSearch"
/>
<ul class="mailList">
<li
v-for="(item, index) in tabList"
:key="index"
@click="onClick(index, item)"
>
<span :class="{ click: index == select }">{{ item.name }}</span>
<span v-if="item.tcount != 0" class="badge">{{ item.tcount }}</span>
</li>
</ul>
<!-- 列表内容 -->
<van-cell
v-for="item in dataList"
:key="item.index"
@click="goIframe(item)"
>
<div v-if="select == 0" class="system">
<div class="system_top">
<div class="title">
<span class="l_name"> {{ item.senderName }}</span><img
v-if="item.hasAtt != 0"
src="../../../assets/fujian.png"
width="12"
alt=""
>
<span class="time">{{ item.senderTime.slice(0, 19) }}</span>
</div>
<div class="smalltitle">
<span class="s_small">{{ item.title }}</span>
</div>
<div class="r_content">
<span>{{ item.content }}</span>
</div>
</div>
</div>
</van-cell>
</van-list>
</van-pull-refresh>
data(){
return{
loading: false,
finished: false,
refreshing: false
}
}
getData() {
this.loading = true
const data1 = {}
request.post(`oaApi`, data1).then(res => {
this.dataList = this.dataList.concat(res.data.rows)
this.total = res.data.total
if (this.dataList.length <= this.total) {
if (res.data.total === 0) {
this.finished = true
}
else {
this.finished = false
}
}
this.loading = false
})
.catch(err => {
console.log(err)
})
},
onLoad() {
this.currentpage++
this.loading = true
const num = this.total / this.pageSize
if (Number.isInteger(num)) {
this.number = num
} else {
this.number = parseInt(num) + 1
}
if (this.dataList.length < this.total) {
if (this.currentpage <= this.number) {
this.getData()
this.loading = false
}
} else {
this.loading = false
this.finished = true
}
},
onRefresh() {
this.dataList = []
this.currentpage = 1
this.getData()
if (this.refreshing) {
this.content = this.dataList
this.dataList = this.content
this.refreshing = false
}
this.loading = false
},