小程序的分享方法onShareAppMessage,可以全局声明吗?
发布于 4 年前 作者 na79 5333 次浏览 来自 问答
  • 小程序的分享方法onShareAppMessage,可以全局声明吗?就是说:在一个地方声明,全部小程序页面都可以具备分享功能
  • 可以一处声明,全局使用
3 回复

你好,分享方法onShareAppMessage目前只支持当前页面的设置

App({

overShare: function () {

//监听路由切换

wx.onAppRoute(function (res) {

//get加载的页面

let pages = getCurrentPages(),

//获取当前页面的对象

view = pages[pages.length - 1],

data;

var url = view.route;    //当前页面url

var options = view.options;    //如果要获取url中所带的参数可以查看options

//useri唯一标识的标记,自己重新写

var urlWithArgs = url + ‘?userid=’ + wx.getStorageSync(userid)+’&’;

for (var key in options) {

var value = options[key]

urlWithArgs += key + ‘=’ + value + ‘&’

}

urlWithArgs = urlWithArgs.substring(0, urlWithArgs.length - 1);

//console.log(urlWithArgs);

if (view) {

data = view.data;

//这里可以过滤不需要复用的内容

//if (!data.isOverShare && view.route != “pages/content/content”) {

data.isOverShare = true;

view.onShareAppMessage = function () {

//你的分享配置

return {

title: ‘美悦在线’,

path: urlWithArgs ,

};

}

//}

}

})

},

onLaunch: function() {

this.overShare();

},

})

在app.js里重写方法,

pages页面分享方法放开

/**

  * 用户点击右上角分享

  */

onShareAppMessage: function () {

}

回到顶部