当前位置:   article > 正文

微信小程序获取扫描二维码后携带的参数_小程序获取二维码参数

小程序获取二维码参数

微信小程序获取扫描二维码后携带的参数

1、decodeURIComponent解析生成二维码的链接。

 /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
    if (options.scene) {
     //获取二维码的携带的链接信息
      let qrUrl = decodeURIComponent(options.scene)
      console.log(qrUrl)
      this.setData({
      	//获取链接中的参数信息
        actId: utils.getQueryString(qrUrl, 'actId'),
        shareUserId: utils.getQueryString(qrUrl, 'shareUserId'),
      })
    } 
  },
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

2、utils中获取链接中所携带的参数

// 解析链接中的参数
let getQueryString = function (url, name) {
  console.log("url = " + url)
  console.log("name = " + name)
  var reg = new RegExp('(^|&|/?)' + name + '=([^&|/?]*)(&|/?|$)', 'i')
  var r = url.substr(1).match(reg)
  if (r != null) {
    console.log("r = " + r)
    console.log("r[2] = " + r[2])
    return r[2]
  }
  return null;
}

//导出方法,外部调用
module.exports = {
  getQueryString: getQueryString,
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

避坑:

onLoad (option) {
  console.log(option)
}
  • 1
  • 2
  • 3

这时可以接收到 拿着参数去请求数据等等操作~

假如你的小程序要发布了

这时候应该改变获取参数的方式,因为正式发布后的获取的参数和在开发者工具中是不一样的,这个坑!!!。下面代码是你获取正式发布小程序后的入口二维码中参数的代码,scene是微信生成二维码方法的一个参数,用来写你要在二维码中携带的参数

onLoad (option) {
  console.log(option)
  if (option.scene) {
    let obj = decodeURIComponent(option.scene)
    ... // 这里就是你拿着参数obj进行操作
  }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

decodeURIComponent详解

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/306468?site
推荐阅读
相关标签
  

闽ICP备14008679号