1***@qq.com
1***@qq.com
  • 发布:2022-07-27 11:16
  • 更新:2023-04-19 19:39
  • 阅读:574

unicloud-db组件的where有问题

分类:uniCloud

where 在onload里面加载条件不生效,在事件里面加载条件也不生效。 只有where在data里面固定写死的可以生效。这是为什么?

uniadmin项目中是正常的。微信小程序客户端就不行

<unicloud-db ref="udb" v-slot:default="{data, pagination, loading, hasMore, error}" :where="where" :collection="collectionList" field="....."></unicloud-db>
data() {  
      return {  
                // 这里的where是有生效的  
          where:{  
              // type:dbCmd.in(['送工场','送仓库']),  
              user:uniCloud.getCurrentUserInfo().uid,  
              status:dbCmd.in(['已下单','已付款','已接受','配送中'])  
          }  
      }  
    },  
onLoad(){  
//这里条件不生效where  
  this.where.status = dbCmd.in(['已到达','已完成'])  

}  
methods:{  
   //这里事件触发也不生效where  
    tabClick(){  
      this.where.status = dbCmd.in(['已到达','已完成'])  
      this.$refs.udb.loadData()  
   }  
}
2022-07-27 11:16 负责人:DCloud_uniAD_HDX 分享
已邀请:
9***@qq.com

9***@qq.com

我也有同样的问题,微信小程序首次加载where条件失效,楼主解决了?

  • 1***@qq.com (作者)

    没解决 烂尾了这问题

    2022-09-06 14:32

  • 1***@qq.com (作者)

    换别的方式做吧。别用组件了。用云对象/云函数查吧

    2022-09-06 14:34

kku

kku

我也遇到这个问题

kku

kku

loadtime="onready" 解决了一部分,又遇了别的问题

DCloud_uniAD_HDX

DCloud_uniAD_HDX

更新组件属性后,应在nextTick中调用方法

this.where.status = dbCmd.in(['已到达','已完成'])  
this.$nextTick(() => {  
  this.$refs.udb.loadData()  
})

要回复问题请先登录注册