微信小程序怎么判断是扫描二维码的方式进入的???

新手上路,请多包涵

如题,如何判断用户是扫小程序二维码进入小程序的???
网上搜了一下 说可以用场景值
但是场景值不会刷新,即先从小程序栏进入小程序,然后退出,再扫码进入,场景值依然显示的是从小程序栏进入小程序

所以说,场景值应该不能解决,有没有其他方法可以判断呢???

阅读 9.6k
2 个回答

你是用安卓机测试的吧?确实有这个问题,官方文档明确说明了的,会保留上一次的场景值。

如果业务上依赖此功能的话,想办法引导用户主动杀死小程序的后台进程吧。

扫二维码打开的小程序,onload 的option参数会有一个q参数,如果本身业务逻辑不存在冲突的参数,可以试试以这个区分?

// helper.js
export const getQueryFromOption = opt => {
  if (opt.q) {
    const url = decodeURIComponent(opt.q);
    const search = url.split('?')[1];
    return { opt, source: 'qrcode'/* 来源二维码扫码 */, ...parseQuery(search) };
  }
  return opt;
};
// page.js
onLoad(opt) {
    opt = getQueryFromOption(opt);
},
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题