db.RegExp单属性查询结果为空,是异步问题么?新人求教
发布于 7 年前 作者 ming88 3079 次浏览 来自 问答

 db.collection('Xuanjiang').where({
        //title:'深圳证券交易所'
        title: db.RegExp({
          regexp:  '.*'+this.data.value+'.*',
          options: 'i'
        })
      }).get().then(res => {
        console.log("搜索结果")
        console.log(res);
        if (res.data) {
          this.setData({
            serchlist: res.data
          })
        }
        // }).get().then(res=>{
        //   console.log("搜索结果")
        //   console.log(res);
        //   if(res.data){
        //     this.setData({
        //       serchlist: res.data
        //     })
        //   }

      });

用全字匹配查询时是有数据的,模糊查询就返回空数组。数据库权限给的是

求各位大佬帮忙看看

2 回复

好像确实是异步的问题。我这边在这个Ajs页面通过这个模糊搜索拿数据前,已经用云函数从数据库里取出了所有数据,模糊搜索没有拿到数据,但是我在一个新的B页面通过模糊搜索可以拿到我想要的数据,甚至于我将db.reg写成了云函数的形式也可以调用,但是在A页面调用这个模糊搜索的云函数就没有返回结果了。

试试

'(.*)?'+this.data.value+'(.*)?'
回到顶部