微信小程序分享html5,微信小程序web-view页面分享,带传参,测试成功

小程序html代码

小程序js代码Page({

data: {

web_src: 'https://cclm.sc108.net/mobile/', // 嵌入的网址

shareObj: '',

share_src: ''

},

onLoad: function (options) {

// 指定分享页面,即分享页,非当前页时

if (options.return_url) {

var web_url = decodeURIComponent(options.return_url);

// 网址中加参数标记是小程序重新载入的

web_url += web_url.indexOf('?') == -1 ? '?' : '&';

web_url += 'platform=miniprogram';

var share_url = decodeURIComponent(options.share_url);

} else {

var web_url = 'https://cclm.sc108.net/mobile/'

var share_url = web_url;

}

this.setData({

web_src: web_url,

share_src: share_url,

});

},

bindGetMsg: function(e) {

console.log(e);

this.data.shareObj = e.detail.data[e.detail.data.length - 1];

},

// 分享

onShareAppMessage(options) {

var that = this

var share_src = that.data.share_src

// 当嵌入网址是重新载入时,更新分享链接为当前网址

if (options.webViewUrl.indexOf('miniprogram') == -1) {

share_src = options.webViewUrl

console.log(123);

}

let shareObj = this.data.shareObj;

shareObj.url = '/pages/index/index?return_url=' +encodeURIComponent(share_src);

console.log(shareObj);

if (shareObj) {

return {

title:shareObj.shareTitle,

desc: shareObj.shareDesc,

path: shareObj.url,

imageUrl: shareObj.shareImage,

success: function(res) {

console.log(res)

}

}

}

},

})

服务器端指定传参

var obj = {

'url':slink    //分享链接,好像没效果

'shareDesc': sdesc, //分享描述,好像没效果

'shareImage': simgUrl, //分享图片

'shareTitle': stitle  //分享标题

}

wx.miniProgram.postMessage({

data: obj

})

填坑说明

在网找到了很多,但试了都不行,要么缺参数,后面终于搞好了,事实上也是有点蒙B,记录一下

在  index.wxml代码中

绑定了 bindmessage="bindGetMsg" 这个方法,用于分享是触发传参用的,

而参数的来自已于服务器端放的代码 wx.miniProgram.postMessage  返回obj参数

还有一点,需要注意,分享的页面链接,要加上一些字符串和转换如:你的分链接是 share_src ,处理一下

share_src = '/pages/index/index?return_url=' +encodeURIComponent(share_src);

最后还要注意,这块代码,在onload方法中,好像没有执行,不过少了这个代码却不行if (options.return_url) {

var web_url = decodeURIComponent(options.return_url);

// 网址中加参数标记是小程序重新载入的

web_url += web_url.indexOf('?') == -1 ? '?' : '&';

web_url += 'platform=miniprogram';

var share_url = decodeURIComponent(options.share_url);

} else {

var web_url = 'https://cclm.sc108.net/mobile/'

var share_url = web_url;

}

this.setData({

web_src: web_url,

share_src: share_url,

});

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值