vant-list onload在切换 tab 或者 搜索 不会触发的坑

vant-list onload在切换 tab 或者 搜索 不会触发的坑

首先要知道onload是根据loading和finished的状态来判定onload函数是否执行,如果我们将loading的初始状态设置为false,在页面加载的时候就会触发onload事件,所以将它设置为true。(为了防止onload请求一次,我们自己来也请求一次,防止多余请求)

loading: true,

我们请求的接口函数放在onload里面,由于我们设置了loading: true,触底就不会刷新了。我们通过自己去调用它来触发

//每次切换tab、者搜索、或者初始化 都调用它
this.loading = true,
this.datalist = []
this.finished = false
if (!this.finished) { this.onLoad(1) }

onload函数

onLoad (val) {
      this.filterParams.page += 1
      if (val === 1) {//每次切换tab、者搜索、或者初始化
        this.filterParams.page = 0
      }
      if (this.tab === 'zp') {
         this.handleGetPaginationProducts()
      } else if (this.tab === 'zs') {
         this.handleGetPaginationCompanys()
      }
    },

vant-list

onLoad (val) {
   <van-list
      v-model="loading"
      :finished="finished"
      @load="onLoad"
    >

你可能感兴趣的:(vant-list onload在切换 tab 或者 搜索 不会触发的坑)