小程序如何带页面参数转发?
发布于 5 年前 作者 qinmin 6566 次浏览 来自 问答

请问小程序可以进行参数页转发吗?     如果可以如何设置

1 回复

第一步:为当前页面设置onShareAppMessage事件。官网说明:

  • 只有定义了此事件处理函数,右上角菜单才会显示 “转发” 按钮

  • 此事件需要 return 一个 Object,用于自定义转发内容

上面两句划重点。

第二步:为onShareAppMessage事件添加逻辑处理。

第三步:在小程序首页/默认启动页,获取分享者信息。

直接上代码:

第一步:(在app.js里定义一个公共函数。)

//设置右上角分享

setShareAppMessage: function (args) {

//分享标题

var title = args.title || “xxxxxxxx”

//页面路径

var path = args.path || “/pages/index/index?shareUserId=” + 123 + “&shareUserName=xxxx”

if (args.sharefrom === ‘button’) {

//来自页面内转发按钮

console.log(res.target)

}

return {

title: title,

path: path,

success: function (res) {

// 转发成功

if (typeof args.success == “function”) {

args.success(res);

}

},

fail: function (res) {

// 转发失败

if (typeof args.fail == “function”) {

args.fail(res);

}

}

}

}

第二步:(onShareAppMessage事件添加逻辑处理,也就是调用上面的公共函数

/**

  * 用户点击右上角分享

  */

onShareAppMessage: function (res) {

//设置右上角分享

return app.setShareAppMessage({

//转发来源

sharefrom: res.from

})

}

第三步:(在小程序首页/默认启动页,获取分享者信息

/**

  * 生命周期函数–监听页面加载

  */

onLoad: function (options) {

//获取分享人id

var shareUserId = options.shareUserId || ‘’

//获取分享人昵称

var shareUserName = options.shareUserName || ‘’

//判断分享人id是否为空

if (shareUserId && shareUserName) {

//显示消息框

this.showToast(“来自” + shareUserName + “的分享~”, 2000)

}

}

回到顶部