转发
2020-02-12 17:27 更新
可以将小程序或其中某个页面转发到微头条,微头条用户可以点击转发内容中的「小程序卡片」回到小程序
触发转发
按钮组件
<button open-type="share">转发到微头条</button>
设置按钮
点击小程序右上角的「设置—转发」按钮,也会触发小程序的转发
转发数据
当转发动作发生后,会触发当前页面 Page 上定义的 onShareAppMessage 方法,并传入一个 object 类型参数 options,属性如下:
属性 | 类型 | 说明 |
---|---|---|
from | string | 触发者为 button 组件时,值为 button ;触发者为设置按钮时,值为 menu |
target | string|undefined | 触发者为 button 组件时,值为 button 对象;触发者为设置按钮时,值为 undefined |
开发者需要在 onShareAppMessage 方法返回需要转发的内容,系统会默认传递参数,开发者也可以自定义如下字段:
属性 | 类型 | 默认值 | 说明 |
---|---|---|---|
title | string | 小程序名称 | 转发的微头条中的「小程序卡片」的标题 |
desc | string | 转发的微头条中的「小程序卡片」的内容 | |
path | string | 当前小程序页面绝对路径 | 转发的微头条中的「小程序卡片」点击时进入小程序的页面绝对路径,可以包含参数 |
imageUrl | string | 小程序 icon 地址 | 转发微头条中的「小程序卡片」的图片,支持本地图片或远程图片 |
templateId | string | 开发者后台设置的分享素材模板 id,详情见分享素材定义 |
Page({
...
onShareAppMessage (option) {
// option.from === 'button'
return {
title: '这是要转发的小程序标题',
desc: '这是默认的转发文案,用户可以直接发送,也可以在发布器内修改',
path: '/pages/index/index?from=sharebuttonabc&otherkey=othervalue', // ?后面的参数会在转发页面打开时传入onLoad方法
imageUrl: 'https://e.com/e.png', // 支持本地或远程图片,默认是小程序 icon
templateId: '这是开发者后台设置的分享素材模板id',
success () {
console.log('转发发布器已调起,并不意味着用户转发成功,微头条不提供这个时机的回调');
},
fail () {
console.log('转发发布器调起失败');
}
}
},
onLoad (query) {
if (query.from === 'sharebuttonabc') {
// do something...
}
}
});
已知问题
- webview 的转发暂未支持
以上内容是否对您有帮助:
更多建议: