收藏
回答

云数据库里的数据,不能通过setData方法传递到页面变量中?

console.log("sucess40");

      const resp = await wx.cloud.callFunction({

        name: 'quickstartFunctions',

        data: { type: 'fetchGoodsList' },

});

const goodsList = resp.result;//此处是通过上面的云函数返回值获取云数据库记录

    console.log("sucess GoodsList=");//显示执行正常

    console.log(goodsList); // 显示此变量正常获取到了云数据库里的数据

    this.setData({

     isLoading: false,

     goodsList,//但此处此页面变量却没有数据,因为转到页面时,显示此变量是一个空的数据

       });


回答关注问题邀请回答
收藏

3 个回答

  • 红花园
    红花园
    01-09


    上面标红里的控制台日志显示,goodsList变量获取到了去函数里的数据库记录,但下一步执行setData()时,页面里的goodsList变量,是空的,就是前面index.js的goodsList变量(记录数据)没有成功传递到页面对应的goodsList变量

    01-09
    有用
    回复 4
    • Mr.Zhao
      Mr.Zhao
      01-09
      success39 是哪段代码? 是不是异步赋值取值问题
      01-09
      回复
    • 红花园
      红花园
      01-10回复Mr.Zhao
      success39,标志,就是成功执行到我附的代码段的开始位置处。这里问题是:在index.js的goodsList变量,成功获取到了云函数里的云数据库记录,上图标红控制台日志可以显示出goodsList变量里获取到的数据库2个记录。但接着把goodsList变量,通过下一步执行setData()时,就是想要把index.js里的goodsList变量传到index.xml页面的对应的{{goodsList}}变量,因为最终要在index.xml页面把这数据库记录显示在页面上。但现在index.xml页面的对应的{{goodsList}}变量是空的,就是在在index.js里执行setData()时,index.js的goodsList变量(记录数据)没有成功传递到页面对应的{{goodsList}}变量。我这里调试了10来天了,也没找到问题原因。
      01-10
      回复
    • Mr.Zhao
      Mr.Zhao
      01-10回复红花园
      整个代码片段吧,你说不清
      01-10
      回复
    • 红花园
      红花园
      01-17
      https://developers.weixin.qq.com/s/0J7R0gmi7OXO
      这是代码片段
      现在问题就是,在pages/index/index.js里执行到云函数quickstartFunctions时,不执行云函数,得不到返回结果
      如下此处:
      const resp = await wx.cloud.callFunction({
              name: 'quickstartFunctions',
               }); // 调用云函数,quickstartFunctions,结果返回云数据库里的所有记录

      以下是云函数cloudfunction/quickstartFunction:
      const cloud = require('wx-server-sdk')
      cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) // 使用当前云环境
      const db = cloud.database();
      // 云函数入口函数
      exports.main = async (event, context) => {
          return await db.collection("goods").get();//云函数,调取云数据库里‘goods’集合里的所有记录(目录里面有两个记录)
         };

      以上看帮忙看看问题所在。
      01-17
      回复
  • showms
    showms
    01-08

    建议自己断点调试排查一下,云函数也可以开启本地调试

    01-08
    有用
    回复
  • Mr.Zhao
    Mr.Zhao
    01-08

    看不见你控制台打印

    01-08
    有用
    回复
登录 后发表内容