vanListCommon.js 2.66 KB
import { getProcessCreatorAvatars } from '@/api/process'

export default {
  data() {
    return {
      loading: false,
      finished: false,
      isDownLoading: false,
      searchValue: '',
      page: 1,
      PCpage:1,
      itemList: [],
      PCitemList:[],
      PCloading:false,
      PCfinished:false,
      activeNames: [],
    }
  },
  methods: {
    loadData(response, _self,random) {
      let rows = response.rows
      this.getImgSrc(rows)
      _self.loading = false //数据请成功后
      _self.isDownLoading = false //数据请成功后
      _self.page++ //页码要增加1
      if (rows == null || rows.length === 0) {
        // 加载结束
        _self.finished = true
        return
      }
      // 将新数据与老数据进行合并
      // 判断处理数据时的tab是不是没变过
      if (random && this.random != random) return
      _self.itemList = _self.itemList.concat(rows)
      //如果列表数据条数>=总条数,不再触发滚动加载
      if (_self.itemList.length >= response.total) {
        _self.finished = true
      }
    },
    loadPCData(response, _self,random) {
      let rows = response.rows
      this.getImgSrc(rows)
      _self.PCloading = false //数据请成功后
      _self.isDownLoading = false //数据请成功后
      _self.PCpage++ //页码要增加1
      if (rows == null || rows.length === 0) {
        // 加载结束
        _self.PCfinished = true
        return
      }
      // 将新数据与老数据进行合并
      // 判断处理数据时的tab是不是没变过
      if (random && this.random != random) return
      _self.PCitemList = _self.PCitemList.concat(rows)
      //如果列表数据条数>=总条数,不再触发滚动加载
      if (_self.PCitemList.length >= response.total) {
        _self.PCfinished = true
      }
    },
    onRefresh() {
      //下拉刷新
      this.finished = false
      this.PCfinished =false
      this.page = 1
      this.PCpage =1
      this.itemList = []
      this.PCitemList = []
      this.loading = true
      this.PCloading = true
      this.activeNames = []
      let routerName = this.$route.name
      if(['circulateMatter','myRequest','myMatters'].includes(routerName)){
        this.onLoad(1)
        this.onLoad(0)
      }else{
        this.onLoad()
      }
      //正常的请求数据的方法,数组重新赋值
    },
    onSearchChange(event) {
      this.onRefresh()
    },
    onSearch(event) {
      this.onRefresh()
    },
    getImgSrc(rows) {
      rows.forEach(async (row) => {
        let imgSrc = await getProcessCreatorAvatars(
          row.creatorId || row.createBy
        )
        this.$set(row, 'imgSrc', imgSrc)
      })
    },
  },
}