• 下载
  • 社区

onShareAppMessage

在 Page 中定义 onShareAppMessage 函数,设置该页面的分享信息。

  • 每个 Page 页面的右上角菜单中默认有 分享 按钮;onShareAppMessage 函数只自定义分享的内容,不影响分享功能。
  • 用户点击分享按钮的时候会调用。
  • 此事件需要返回一个对象(Object)类型,用于自定义分享内容。
  • 分享图片中的二维码的有效期为 60 天,若需要长期有效的二维码,请到“开发者后台-码管理”中生成。


扫码体验

自定义分享.jpeg


效果示例

自定义分享.gif


示例代码

// API-DEMO page/API/share/share.json
{
    "defaultTitle": "onShareAppMessage"
}


<!-- API-DEMO page/API/share/share.axml-->
<view class="page">
  <view class="page-description">点击右上角开始自定义分享</view>
</view>


// API-DEMO page/API/share/share.js
Page({
  onShareAppMessage() {
    return {
      title: '分享 View 组件',
      desc: 'View 组件很通用',
      path: 'page/component/view/view',
    };
  },
});


入参

Object 类型,属性如下:

属性

类型

说明

最低版本

from

String

触发来源:

button:页面分享按钮触发;

menu:右上角分享按钮触发

code:执行my.showSharePanel 触发。

1.10.0

target

Object

如果 from 值为 button,则 target 为触发这次分享的 button,否则为 undefined。

1.10.0

webViewUrl

String

页面中包含web-view组件时,返回当前 web-view 的URL。

1.6.0

onShareAppMessage 执行后必须返回一个分享对象,用于自定义分享内容。


返回值

属性

类型

必填

描述

最低版本

title

String

自定义分享标题。


desc

String

自定义分享描述:由于分享到微博只支持最大长度 140 个字,因此建议长度不要超过该限制。


path

String

自定义分享页面的路径,path中的自定义参数可在小程序生命周期的 onLoad方法中获取(参数传递遵循 http get 的传参规则)。path 路径里不能带根目录 /  。


content

String

自定义吱口令文案,最多 28 个字符。

1.7.0

imageUrl

String

自定义分享小图 icon 元素,支持:网络图片路径;apFilePath 路径;相对路径。使用场景详见下方说明。

1.4.0

bgImgUrl

String

自定义分享预览大图,建议尺寸750x825,支持:网络图片路径;apFilePath路径(客户端10.1.58版本开始支持);相对路径(客户端 10.1.58 版本开始支持)。使用场景详见下方说明。

1.9.0

success

Function

分享成功后回调。

1.4.0

fail

Function

分享失败后回调。

1.4.0


success 回调函数

入参为 Object 类型,属性如下:

属性类型描述

channelName

String

分享所选择的渠道

shareResult

Boolean

分享是否成功



Page.onShareAppMessage


基础库版本 1.1.0 开始支持。

通过给 button 组件设置属性 open-type="share",可以在用户点击按钮后触发 Page.onShareAppMessage() 页面内发起分享事件,并唤起分享面板,如果当前页面没有定义此事件,则点击后无效果。相关组件:button 。

App.onShareAppMessage

可以在App(Object)构造函数中设置全局的分享onShareAppMessage配置,当调用分享时,如果未配置页面级的分享设置则会使用全局的分享设置。


分享场景及字段说明