微信小程序之转发分享
最近做小程序,有这样一个需求:要求将用户A在小程序A页面操作行为生成的一个参数id通过分享小程序分享用户B,用户B打开小程序在B页面展示这个参数id。
为了实现这个需求,就用到小程序的分享功能(page的onShareAppMessage方法)。
首先看开发文档:
然后开始操作:
页面a:要分享的页面 pages/a/a.js
onShareAppMessage:function(res){
if (res.from === ‘button’) {
}
return {
title:'测试分享',
path:'/pages/b/b?id=123',
}
},
页面b pages/b/b.js
在b页面的onload中的options参数来接收传递的参数id
//1007场景值为通过单人会话聊天的卡片进入小程序
if (app.globalData.scene == “1007”) {
//app.globalData.scene 为提前在app.js的onlaunch中获取的场景值,在b页面应用
console.log(“我是场景值” + app.globalData.scene)
if (options.id) {
that.setData({ id: options.id})
console.log(that.data.id)
}
}
这样B用户通过A用户分享的卡片进入小程序时进入B页面,并且获取到用户A分享来的参数id。
Tips:
1、小程序开发版无法真机模拟分享,可以通过开发这工具添加编译模式来设置进入的场景值,以及是否带有参数。但是毕竟还是要真机试了安心,所有有了2;
2、通过体验版来调试分享,并且获取参数。体验版设置就很简单了:上传代码。然后在微信公众号后台的版本管理将改版本设为体验本就可以,不要忘了人还要将被分享者也添加为体验者成员。
3、过程中有个坑注意:page自动生成的模板本来就有一个onShareAppMessage方法,自己没注意又重新写了一个,导致方法return{}的对象的内容(title、path)一直无效。后来将重复的空白方法删除后终于正常。
到此,这个需求就实现了。
上一篇: mac版qq怎么退出账号(苹果笔记本QQ使用方法)
下一篇: js原型继承的几种方法