当前位置: 移动技术网 > IT编程>开发语言>JavaScript > 微信小程序 闭包写法详细介绍

微信小程序 闭包写法详细介绍

2019年04月05日  | 移动技术网IT编程  | 我要评论
微信小程序 闭包写法 在入口处的 app.js 中定义了一个获取用户 openid 的函数,在微信的登录接口 wx.login 中发起网络请求。这个函数传入一个回调函数

微信小程序 闭包写法

在入口处的 app.js 中定义了一个获取用户 openid 的函数,在微信的登录接口 wx.login 中发起网络请求。这个函数传入一个回调函数 cb

getopeniddata: function(cb) {
  var that = this
  //调用登录接口
  wx.login({
    success: function(res) {
      wx.request({
        url: 'https://api.weixin.qq.com/sns/jscode2session',
        data: {
          appid: "wx6224eb*********",
          secret: "879b58fc64bc5**************",
          js_code: res.code,
          grant_type: "authorization_code"
        },
        success: function(res) {
          // 保存到全局变量中
          that.globaldata.openid = res["data"]["openid"]
          cb(that.globaldata.openid)
        },
        fail: function() {
          console.log("request error")
        }
      })
    }
  })
}

在 index.js 文件时,使用 getopeniddata 接口

var app = getapp()
app.getopeniddata(function(openid){
  //回调更新数据
  that.setdata({
  openid: openid
  })
})

在接口中传入匿名函数

function(openid){
  //回调更新数据
  that.setdata({
  openid: openid
  })
}

先将匿名函数传入到 app.js 中,获取到 openid 数据。再回到 index.js 将数据赋给此文件的全局变量。这样就实现跨文件传递数据。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网