微信小程序目前一个每个页面都分享数据都不一样。导致每个页面都需要写重复的代码,为了方便快捷的统一管理分享。方法如下:

方法一:

1、在需要被分享的页面添加如下代码

Page({/*** 用户点击右上角分享  增加*/onShareAppMessage: function () {// 函数体内容为空即可}

2、在 app.js 中添加重写分享方法

//重写分享方法
overShare: function () {//间接实现全局设置分享内容wx.onAppRoute(function () {//获取加载的页面let pages = getCurrentPages(),//获取当前页面的对象view = pages[pages.length - 1],data;if (view) {data = view.data;// 判断是否需要重写分享方法if (!data.isOverShare) {data.isOverShare = true;view.onShareAppMessage = function () {//重写分享配置return {title: '分享标题',path: "/pages/index/index"    //分享页面地址};}}}})
},

3、在app.js  onLaunch 函数中调用该方法

onLaunch() {this.overShare()
}

分享携带参数,可以参照方法二来实现。就不一一写出来了。不懂的小伙伴可以私聊我

方法二:

1、在公共js写入

//分享功能
function shareEvent(option, obj){let shareObj = {title: obj.title,path: obj.path + '?obj.scan=' + obj.scan,imageUrl: obj.imageUrl,success(res) { // 转发成功之后的回调if (res.errMsg == 'shareAppMessage:ok') { }},fail(res) { // 转发失败之后的回调if (res.errMsg == 'shareAppMessage:fail cancel') {//用户取消转发} else if (res.errMsg == 'shareAppMessage:fail') {// 转发失败,其中 detail message 为详细失败信息}},complete() {// 转发结束之后的回调(转发成不成功都会执行)}};if (option.from === 'button') {// 来自页面内转发按钮console.log(option.target)}return shareObj;
}

在页面上调用

/*** 用户点击右上角分享*/onShareAppMessage: function (option) {let imageUrl = '/img/ucenter/head.jpg';let sharePath = "/pages/index/index";let shareTitle = "快来进来吧~";let obj = {title: shareTitle,path: sharePath,imageUrl: imageUrl,scan:"ddd"};return util.shareEvent(option, obj);},

微信小程序---全局分享实现相关推荐

  1. uniapp 实现微信小程序全局分享及自定义分享按钮样式

    uniapp 实现微信小程序的全局 转发给好友/分享到朋友圈 的功能.主要使用 Vue.js 的 全局混入 概念. 下面直接上 实现步骤和代码: 创建全局分享内容文件 1.创建一个全局分享的 js 文 ...

  2. 微信小程序全局分享转发实现-无需页面单独设置

    微信小程序没有自带全局分享设置,页面开启分享功能必须要在页面中定义分享事件函数onShareAppMessage(分享给朋友)和onShareTimeline(分享至朋友圈).如果项目中页面比较多,一 ...

  3. 微信小程序-全局分享、自定义分享

    初六复工,难以接受,我甚至能接受今天是我六十大寿但是我难以接受今儿是正月初六. 言归正传 年前写了个分享,还要所有的页面都要有分享,那我岂不是每个页面都要写一个onShareAppMessage?no ...

  4. 微信小程序全局分享设置

    在项目根目录下app.js设置: App({onLaunch: function() { //启动小程序执行方法this.overShare()},//重写分享方法overShare() {//监听路 ...

  5. 微信小程序记录用户行为浏览记录和停留时间以及小程序全局分享

    微信小程序记录用户行为浏览记录和停留时间以及小程序全局分享 项目需求 1.后台统计一个用户在我们小程序的每个页面的停留时间 2,前台用户可以在个人中心看到自己的分享记录以及多少人查看 需求分析 需求一 ...

  6. uniapp实现微信小程序全局【发送给朋友】、【分享到朋友圈】、【复制链接】

    在开发微信小程序的时候,发现[发送给朋友].[分享到朋友圈].[复制链接]功能,灰色不可用. 很常见的功能,但是这几个功能,并不是你项目建起来了就有的. 1.[发送给朋友]使用 onShareAppM ...

  7. 微信小程序----全局状态管理 (便于全局埋点等操作)

    说明 由于我是一个有着一颗玻璃心的博主,导致在2018年后博客很少更新.原因是由于我的分享并没有解决到部分人的问题,而导致被骂了.当时这颗玻璃心就碎了,所以这两年以来很是消极,博客很少更新.这里给那些 ...

  8. php小程序开发实例,微信小程序全局配置开发实例

    本文主要和大家分享微信小程序全局配置开发实例,主要以代码的形式和大家分享,希望能帮助到大家. 一.app.json 使用app.json文件来对微信小程序进行全局配置,决定页面文件的路径.窗口表现.设 ...

  9. 微信小程序/uniapp分享功能-代码封装与使用(分享好友或朋友圈-两种方式)

    官方地址:分享 | uni-app官网 一.分享朋友圈-详见uni-app官方文档 注意:更多注意事项见uni-app文档  结果展示: 二.分享好友或者朋友圈-详见微信开放文档 先展示:  实现分享 ...

最新文章

  1. 关于select—页面中的ListBox的Javascript
  2. java耗时操作阻塞_springboot~高并发下耗时操作的实现
  3. 借助xUnit减少了生产问题
  4. 前端 javascript 变量
  5. Qt:During startup program exited with code 0xc0000135
  6. ArcGIS 起伏度、坡度、交通便利度数据生成
  7. powerbuilder11的webform发布和webservices调用实践
  8. 【WPF】资源--《深入浅出WPF》by刘铁锰
  9. android 斜线 绘制_Android绘图:绘制直线的 drawLine方法
  10. Windows超级管理器,堪比火绒管家
  11. java tika pdf_java解析pdf获取pdf中内容信息
  12. 再安利几个看片追剧的App
  13. 使用python itchat模块实现微信聊天机器人_code
  14. 【vue+vue-area-linkage】三级联动省市区选择器
  15. Xamarin for android学习总结一
  16. html表格边框怎么消除,如何去除table的粗边框
  17. NCBI数据下载-sra
  18. 离散数学考前复习:(三)计数
  19. SD-WAN,让你的组网更灵活
  20. java-net-php-python-jspm光影婚纱影楼系统设计与实现系统计算机毕业设计程序

热门文章

  1. SpringBoot使用assembly进行项目定制化打包
  2. 翻转游戏(Flip_Game)
  3. 优傲机器人ur robot与 PC 通讯
  4. 3.关于普通三极管的类型及引脚判断
  5. C语言实验(十二):函数(输入年份输出日历、闰年判断、元旦星期几)
  6. EasyNLP 带你实现中英文机器阅读理解
  7. 微信小程序踩坑:wx.openDocument(Object object)打不开文件
  8. vue 组件不受全局样式影响_Vue 组件之间样式冲突
  9. MoFan.tensorflow目录
  10. vMix软件下SRT编解码器功能配置手册