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

方法一:

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. ASP.NET中使用非托管DLL
  2. LeetCode 644. 最大平均子段和 II(二分查找)*
  3. awk 脚本_AWK单行代码和脚本可帮助您对文本文件进行排序
  4. 全方位测评Hive、SparkSQL、Presto 等七个大数据查询引擎,最快的竟是……| 程序员硬核测评...
  5. CoreGraphics中CGContextAddArcToPoint函数的用法说明
  6. 记录下ES6踩过的坑
  7. 【干货分享】Color Fonts是什么?多彩字体详解
  8. Angular 从入坑到挖坑 - 路由守卫连连看
  9. 回顾日本和台湾的股市泡沫
  10. [小白入门]SEO优化是什么意思?4步骤掌握SEO网站优
  11. 3D模型轻量化处理教程【Blender】
  12. 计算机中如何美化表格,手把手教你如何一秒美化Excel表格
  13. Particle Filter 粒子滤波
  14. 2018.4.3 美图笔试题
  15. Axure RP 8最新激活码(可用注册码)
  16. 什么是erasure code
  17. Linux脚本 括号,linux shell取小括号()、中括号[]、大括号{}等里的内容
  18. dockerfile镜像原理
  19. php 同学录设计与实现,同学录系统的设计与实现
  20. 空当接龙 java,VBA解决Windows空当接龙的617局

热门文章

  1. 手机中的航母:戴尔Mini 5问世
  2. Excel通过网站页面导入数据
  3. unity像素风3D场景-后处理
  4. [BZOJ4319][cerc2008]Suffix reconstruction(贪心)
  5. 如何防止锻炼后肌肉酸痛?
  6. matlab lisp,LISP-12953284-51CTO博客
  7. C/C++编程:ZeroMQ安装以及使用(windows+centos)
  8. [USACO21DEC] Air Cownditioning B(差分)
  9. 三菱电梯部分原理图,软件工具及资料
  10. 小米在欧美市场迈出了脚步,而专利是它的达摩克利斯之剑