100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 微信小程序 转发 分享 收藏 复制链接

微信小程序 转发 分享 收藏 复制链接

时间:2022-12-29 05:53:08

相关推荐

微信小程序 转发 分享 收藏 复制链接

(1)分享:在要分享的页面的js文件中设置:监听用户点击页面内转发按钮(button组件open-type="share")或右上角菜单“转发”按钮的行为,并自定义转发内容。设置允许“发送给朋友”onShareAppMessage:function(from,target,webViewUrl){参数:from 转发事件来源。button:页面内转发按钮;menu:右上角转发菜单 target 如果 from 值是 button,则 target 是触发这次转发事件的 button,否则为 undefined webViewUrl 页面中包含web-view组件时,返回当前web-view的url const promise = new Promise(resolve => {setTimeout(() => {resolve({title: '自定义转发标题'})}, 2000)})return{title:'点击转发后,页面文章的标题',path: "/pages/news/news-detail/news-detail"默认是当前页面imageUrl:'本地文件路径、代码包文件路径或者网络图片路径。支持PNG及JPG'不写默认为当前页面截图promise,如果该参数存在,则以resolve结果为准,如果三秒内不resolve分享会使用上面传入的默认参数}}其中:该函数与data同级path的默认路径为根路径,即src开始path:'/必要要以/开头,放置要分析页面的文件路径,可根据app.json内的配置信息设置'(2)点击按钮分享:button 组件设置属性 open-type="share",可以在用户点击按钮后触发 Page.onShareAppMessage(3)分享到朋友圈:必须先定义onShareAppMessage,定义该回调,点击右上角分享,才会显示onShareTimeline(){return{title:自定义标题,即朋友圈列表页上显示的标题 当前小程序名称 query:自定义页面路径中携带的参数,如 path?a=1&b=2 的 “?” 后面部分 当前页面路径携带的参数 imageUrl:自定义图片路径,可以是本地文件或者网络图片。支持 PNG 及 JPG,显示图片长宽比是 1:1。 默认使用小程序 Logo }}分享到朋友圈后,并不会真正打开小程序,而是进入一个“小程序单页模式”的页面,“单页模式”有以下特点页面无登录态,与登录相关的接口,如wx.login均不可用,云开发资源需开启未登录访问方可在单页模式下使用,详见未登录模式。不允许跳转到其它页面,包括任何跳小程序页面、跳其它小程序、跳微信原生页面不允许横屏使用若页面包含tabBar,tabBar不会渲染,包括自定义tabBar本地存储与小程序普通模式不共用在app.json顶层或window字段内配置(未验证)navigationBarFit默认自动调整,若原页面是自定义导航栏,则为float,否则为squeezed值为float时表示导航栏浮在页面上,与页面相交,值为squeezed时表示页面被导航栏挤压,与页面不相交可通过判断场景值等于1154的方法来进行页面适配(4)获取分享打开后的更多信息如分享到群聊获取更多信息:(1)调用后,可以在App.onLaunch或App.onShow获取到一个shareTicketwx.showShareMenu({withShareTicket是否使用带shareTicket的转发详情,true能获取更多信息menus本接口为Beta版本,暂只在Android平台支持。需要显示的转发按钮名称列表,默认['shareAppMessage']。按钮名称合法值包含"shareAppMessage"、"shareTimeline"两种success,...})(2)获取更多信息wx.getShareInfo({shareTicket,timeout, 毫秒success,需要解密errMsg错误信息encryptedData包括敏感数据在内的完整转发信息的加密数据,详细见加密数据解密算法iv加密算法的初始向量,详细见加密数据解密算法cloudID敏感数据对应的云 ID,开通云开发的小程序才会返回,可通过云调用直接获取开放数据,详细见云调用直接获取开放数据fail,complete})(5)群主转发小程序时同时把消息设为该群的群待办消息(1)更新转发属性wx.updateShareMenu({withShareTicket是否使用带shareTicket的转发详情isUpdatableMessage是否是动态消息,详见动态消息activityId动态消息的activityId。通过updatableMessage.createActivityId接口获取toDoActivityId群待办消息的id,通过toDoActivityId可以把多个群待办消息聚合为同一个。通过updatableMessage.createActivityId接口获取。详见群待办消息2.11.0templateInfo动态消息的模板信息isPrivateMessage是否是私密消息。详见小程序私密消息success接口调用成功的回调函数fail接口调用失败的回调函数complete接口调用结束的回调函数(调用成功、失败都会执行)})(2)若将多个待办消息聚合为同一个通过wx.updateShareMenu接口修改toDoActivityId属性可以把多个待办消息聚合为同一个即转发相同toDoActivityId的群待办消息,只会出现一个待办消息气泡。toDoActivityId需要在转发前通过updatableMessage.createActivityId接口创建(6)动态消息转发消息发出去之后,开发者可以通过后台接口修改部分消息内容。消息有对应的提醒按钮,用户点击提醒按钮可以订阅提醒,开发者可以通过后台修改消息状态并推送一次提醒消息给订阅了提醒的用户消息有两个状态,分别有其对应的文字内容和颜色,其中状态0可以转移到状态0和1,状态1无法再转移。状态文字内容颜色允许转移的状态0"成员正在加入,当前 {member_count}/{room_limit} 人"#FA9D390, 11"已开始"#CCCCCC无状态参数每个状态转移的时候可以携带参数,具体参数说明如下。参数类型说明member_countstring状态 0 时有效,文字内容模板中 member_count 的值room_limitstring状态 0 时有效,文字内容模板中 room_limit 的值pathstring状态 1 时有效,点击「进入」启动小程序时使用的路径。对于小游戏,没有页面的概念,可以用于传递查询字符串(query),如 "?foo=bar"version_typestring状态 1 时有效,点击「进入」启动小程序时使用的版本。有效参数值为:develop(开发版),trial(体验版),release(正式版)(1)创建activity_id每条动态消息可以理解为一个活动,活动发起前需要通过updatableMessage.createActivityId接口创建activity_id。后续转发动态消息以及更新动态消息都需要传入这个activity_id。活动的默认有效期是 24 小时。活动结束后,消息内容会变成统一的样式:文字内容:“已结束”文字颜色:#00ff00(2)在转发之前声明消息类型为动态消息通过调用 wx.updateShareMenu 接口,传入 isUpdatableMessage: true,以及 templateInfo、activityId 参数。其中 activityId 从步骤一中获得。wx.updateShareMenu({withShareTicket: true,isUpdatableMessage: true,activityId: '', // 活动 IDtemplateInfo: {parameterList: [{name: 'member_count',value: '1'}, {name: 'room_limit',value: '3'}]}})(3)修改动态消息内容动态消息发出去之后,可以通过updatableMessage.setUpdatableMsg修改消息内容。(7)私密消息转发当分享者分享小程序卡片给其他用户或者微信群后,其他用户点击此小程序卡片时,开发者可以鉴别出点击卡片的用户是否被分享者分享过小程序卡片。(1)创建activityId创建业务活动后、分享小程序消息前,需要通过后台接口updatableMessage.createActivityId创建activityId,建立一个activityId与一个业务活动id唯一关联。然后通过wx.updateShareMenu接口声明本次分享的消息为私密消息,私密消息具有不可二次转发性。声明完成后,可以通过右上角菜单、分享按钮组件、wx.shareAppMessage(仅小游戏)分享私密消息给个人、群聊。activityId创建后7天内分享有效,120天内验证有效。wx.updateShareMenu({withShareTicket: true,isPrivateMessage: true,activityId: 'xxx',})(2)验证从群聊、单聊消息卡片进入小程序时,通过wx.authPrivateMessage接口可以验证当前用户是否是私密消息的接收者,即验证这条消息是否是A直接转发给B或者A转发给B所在的群。该接口使用前,需要通过wx.login()接口登录小程序。wx.authPrivateMessage({shareTicket,sucesserrMsg错误信息valid验证是否通过,可能被篡改encryptedData经过加密的activityId,解密后可得到原始的activityId。若解密后得到的activityId可以与开发者后台的活动id对应上则验证通过,否则表明valid字段不可靠(被篡改)详细见加密数据解密算法iv加密算法的初始向量,详细见加密数据解密算法...})(8)转发分享图片wx.showShareImageMenu({path,要分享的图片地址,必须为本地路径或临时路径success,...})示例:wx.downloadFile({url: 'https://res./wxdoc/dist/assets/img/demo.ef5c5bef.jpg',success: (res) => {wx.showShareImageMenu({path: res.tempFilePath})}})(9)转发分享视频wx.shareVideoMessage({videoPath,要分享的视频地址,必须为本地路径或临时路径thumbPath,缩略图路径,若留空则使用视频首帧success,...})示例:回调写法:wx.downloadFile({url: URL, 下载urlsuccess (res) {下载完成后转发wx.shareVideoMessage({videoPath: res.tempFilePath,success() {},fail: console.error,})},fail: console.error,})Promise写法:const { tempFilePath } = await wx.downloadFile({url: URL, })下载完成后转发await wx.shareVideoMessage({videoPath: res.tempFilePath,})(10)转发分享文件wx.shareFileMessage({filePath要分享的文件地址,必须为本地路径或临时路径fileName自定义文件名,若留空则使用filePath中的文件名success接口调用成功的回调函数...})示例:支持上面的回调写法const { tempFilePath } = await wx.downloadFile({url: URL, 下载url})下载完成后转发await wx.shareFileMessage({filePath: res.tempFilePath,})(11)复制链接监听用户点击右上角菜单的「复制链接」按钮时触发的事件。本接口为Beta版本,暂只在Android平台支持。应在进入页面时调用wx.onCopyUrl自定义query,退出页面时调用wx.offCopyUrl,防止影响其它页面。绑定分享参数wx.onCopyUrl(() => {return { query: 'a=1&b=2' }})取消绑定分享参数wx.offCopyUrl()(12)收藏:收藏视频wx.addVideoToFavorites({videoPath要收藏的视频地址,必须为本地路径或临时路径thumbPath缩略图路径,若留空则使用视频首帧success...})收藏文件wx.addFileToFavorites({filePath要收藏的文件地址,必须为本地路径或临时路径fileName自定义文件名,若留空则使用filePath中的文件名success...})用户点击右上角收藏触发事件:onAddToFavorites(webviewUrl) {页面中包含web-view组件时,返回当前web-view的url...return {title: '自定义标题',imageUrl: 'http://demo.png',query: 'name=xxx&age=xxx',当前页面的query}}示例:wx.downloadFile({url: URL, 下载urlsuccess (res) {下载完成后收藏wx.addVideoToFavorites({videoPath: res.tempFilePath,success() {},fail: console.error,})},fail: console.error,})(13)隐藏当前页面的转发按钮wx.hideShareMenu({menus: ['shareAppMessage', 'shareTimeline'],"发送给朋友"|"分享到朋友圈"隐藏“发送给朋友”按钮时必须同时隐藏“分享到朋友圈”按钮,隐藏“分享到朋友圈”按钮时则允许不隐藏“发送给朋友”按钮sucess,...})

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。