收藏
回答

全局变量在then内赋值后在函数外调用内容为空?

var dm

db.collection('zhongdui').where({

_openid: this.data.openid

}).get().then(res => {dm=res.data[0],console.log(dm)})  //打印结果为{duiming: {…}}

console.log(dm)   //打印结果为undefined


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

3 个回答

  • o0o有脾气的酸奶
    o0o有脾气的酸奶
    2019-10-29

    xxxx: async function(){

        var res = await db.collection(...)...get(),

        dm = res.data[0]

        console.log(dm)

    }

    2019-10-29
    赞同 1
    回复 15
    • z
      z
      2019-10-29
      function(这个括号报错了,用xxxx=>async function()行么
      2019-10-29
      回复
    • o0o有脾气的酸奶
      o0o有脾气的酸奶
      2019-10-29回复z
      自己看着办呀,在页面js中
      xxxx: async function(){}
      或者
      async xxx(){}
      2019-10-29
      回复
    • o0o有脾气的酸奶
      o0o有脾气的酸奶
      2019-10-29回复z
      async 、await 是配对使用的
      2019-10-29
      回复
    • z
      z
      2019-10-29回复o0o有脾气的酸奶
      这样修改以后
      async function xxxx() {
            var res = await db.collection('zhongdui').where({
              _openid: this.data.openid
            }).get(),
              dm = res.data[0]
              console.log(dm) //打印值为''
          }
      2019-10-29
      回复
    • o0o有脾气的酸奶
      o0o有脾气的酸奶
      2019-10-29回复z
      你先打印res看看
      2019-10-29
      回复
    查看更多(10)
  • 老张
    老张
    2019-10-29

    如果不为空,才是出错了。

    2019-10-29
    赞同 1
    回复 1
    • z
      z
      2019-10-29
      可以怎么实现取值呢
      2019-10-29
      回复
  • var 友原
    var 友原
    2019-10-29

    同步异步问题

    2019-10-29
    赞同 1
    回复 2
    • z
      z
      2019-10-29
      可以怎么实现取值呢
      2019-10-29
      回复
    • var 友原
      var 友原
      2019-10-29回复z
      参考楼上那位兄弟
      2019-10-29
      回复
登录 后发表内容
问题标签