收藏
回答

云开发有的云函数可以调,有的报500怎么回事?

框架类型 问题类型 终端类型 AppID 基础库版本
小程序 Bug 工具 wx5dcdcb1dca1a99fe 2.7.5





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

3 个回答

  • 罗梅光
    罗梅光
    2019-09-06

    什么原因?没找出来,而且把集合的引用存到常量里面合适吗?

    2019-09-06
    有用
    回复 8
    • 慕筱溪
      慕筱溪
      2019-09-06
      合不合适我不清楚,但是小程序可以直接在页面调数据库的API啊
      2019-09-06
      回复
    • 罗梅光
      罗梅光
      2019-09-06回复慕筱溪
      对,有类似的问题,云函数的问题你可以看看吗?https://developers.weixin.qq.com/community/develop/doc/0002c0282f05983bdf19f633651c00
      2019-09-06
      回复
    • 慕筱溪
      慕筱溪
      2019-09-06

      报 500 的原因是因为下面这里多了 await,删掉就好了


      if (event.type == "exInsert") { // 判断是否已存在数据
            return await targetDB.where(event.where).get().then(res => {
              if (res.data.length == 0){
                let data = event.data;
                return targetDB.add({
                  data: event.data
                })
              }
            });
          }


      2019-09-06
      回复
    • 罗梅光
      罗梅光
      2019-09-06回复慕筱溪
      可是数据库操作是异步不等它执行完毕根本不知道是否执行成功,
      2019-09-06
      回复
    • 罗梅光
      罗梅光
      2019-09-06回复慕筱溪
      哇,我的问题按照楼主的写法解决了。好像await的异步操作再return就可以了。
      2019-09-06
      回复
    查看更多(3)
  • 慕筱溪
    慕筱溪
    2019-09-06

    原因已找到  async 和 await  使用出了问题

    2019-09-06
    有用
    回复
  • 小程序开发交流
    小程序开发交流
    2019-09-05

    应该是云函数中有错误。自己慢慢调试

    2019-09-05
    有用
    回复 1
    • 慕筱溪
      慕筱溪
      2019-09-06
      云函数有错误也不应该报500 吧,而且我是在页面调试好才封装云函数的
      2019-09-06
      回复
登录 后发表内容
问题标签