微信公众号开发

微信小程序之云开发的小程序只在PC打开,watch中报错,其他设备上都很正常

本文主要是介绍微信小程序之云开发的小程序只在PC打开,watch中报错,其他设备上都很正常,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

之前在pc上也是正常的,突然报的这个错。
在这里插入图片描述
排查了好久发现是这个监听的错。
试过用get获取数据pc也是可以获取的,就是这个watch报了错
下面是代码片段

watcher = db.collection(database_name).orderBy('time', 'desc').where({
      // openid:wx.getStorageSync('openid'),
      uid:wx.getStorageSync('id')
    }).watch({
      onChange:function(data){
        console.log(data)
        if(data.docChanges.length==0){
          return
        }
        //当数据删除的时候
        if(data.docChanges[0].dataType=="remove"){
            console.log('删除')
        }else if(data.docChanges[0].dataType=="add"){
          // 语音播报
          if(data.docChanges[0].doc.msg_type==2){
            data_arr.push(data.docChanges[0].doc.msg)
            console.log(data_arr,'单个语音播报')
            audio_text(data_arr[0])
          }
        }
      },
      one rror:function(err){
        watcher.close()
      }
    })

最后的最后无意间发现了问题所在:数据越来越多,初始化的时候返回的数据也就大了

pc端监听的返回的数据大小的限制。
解决方案:加个limit()做个限制
这篇关于微信小程序之云开发的小程序只在PC打开,watch中报错,其他设备上都很正常的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!