评论

forEach里不能使用await,不然那会报错

forEach里不能使用await,不然那会报错

forEach里不能使用await,不然那会报错
云函数里报错如下

{“errorCode”:1,“errorMessage”:“user code exception caught”,“stackTrace”:“Unexpected identifier”}

点赞 0
收藏
评论

3 个评论

  • 老张
    老张
    2019-12-18

    可以的。

    array.forEach(async(v)=>{})

    2019-12-18
    赞同
    回复 3
    • 见相非相
      见相非相
      2019-12-18
      运行虽然没报错,但是没有执行数据库操作。
      result.forEach(async(item) => {
              console.log('forEach', item._id)
              const id = item._id
              await db.collection("test").add({
                  data: {
                      open_id: OPENID,
                      tid: id,
                      createTime: Date.now()
                  }
              })
          });


      log输出了,但是数据库没有插入成功,也没有报错,请教一下是什么情况?
      2019-12-18
      回复
    • 老张
      老张
      2019-12-18回复见相非相
      解决了forEach中可以await就行了,其他问题你可以单独排查,再和forEach联全排查。这种没成功的原因太多了。
      2019-12-18
      回复
    • 见相非相
      见相非相
      2019-12-18回复老张
      插入语句换用另外一种遍历方式就能执行,还是稳点好,但还是谢谢你了
      2019-12-18
      回复
  • 周赟
    周赟
    2019-12-17

    云函数报错不是前端的问题吧?

    2019-12-17
    赞同
    回复 1
    • 见相非相
      见相非相
      2019-12-17
      云函数里面的js啊
      2019-12-17
      回复
  • 罗梅光
    罗梅光
    2019-12-17

    使用

    for(let len=arr.length;len>0;len--) {     await fun     }

    async fun

    2019-12-17
    赞同
    回复 1
    • 见相非相
      见相非相
      2019-12-17
      哈哈哈,我没用forEach了,我就是记录一下这个坑。谢谢你
      2019-12-17
      回复
登录 后发表内容