您的位置:首页 > 移动开发 > 微信开发

微信app的分享功能

2020-02-06 20:37 106 查看

  最近在做微信app,需要用到分享功能,横观文档,压根没有提过分享功能自定义的事情……后来在搜索中找到一些前辈的文章,使用WeixinJSBridge这个接口实现,但是,我非常非常好奇,这是什么渠道透露出来的 ||_||

var options = {
"appid": '',  //可以不设置 但必须存在这属性
"img_url": '',  //分享图片的路径
"img_width": "200",
"img_height": "200",
"link": '',  //分享的链接
"desc": '',  //分享的描述文字 (分享到朋友圈没有描述)
"title": ''  //分享的标题
};

function shareFriend() {
  //分享给朋友 WeixinJSBridge.invoke('sendAppMessage',options, function(res) { //_report('send_msg', res.err_msg); }) } function shareTimeline() {
  //分享到朋友圈 WeixinJSBridge.invoke('shareTimeline',options, function(res) { //_report('timeline', res.err_msg); }); } function shareWeibo() {
  //分享到腾讯微薄 WeixinJSBridge.invoke('shareWeibo',{ "content": options.descContent, "url": options.lineLink, }, function(res) { //_report('weibo', res.err_msg); }); } // 当微信内置浏览器完成内部初始化后会触发WeixinJSBridgeReady事件。 document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() { // 发送给好友 WeixinJSBridge.on('menu:share:appmessage', function(argv){ shareFriend(); }); // 分享到朋友圈 WeixinJSBridge.on('menu:share:timeline', function(argv){ //shareTimeline();return false; //返回false只是本人代码习惯,没有return也可以,只要不设置执行的方法,就不会触发分享。 }); // 分享到微博 WeixinJSBridge.on('menu:share:weibo', function(argv){ //shareWeibo();return false; }); }, false);

   在实际开发中,使用的是seajs的模块化管理,如果在模块里面执行WeixinJSBridge的事件绑定,这是有问题的。经过多次试验,WeixinJSBridge是会在seajs引入模块之前加载完毕,也就是绑定WeixinJSBridgeReady事件的时候,WeixinJSBridge已经加载完毕,过了ready的时间,就不会触发WeixinJSBridgeReady的事件。也就是要使用WeixinJSBridge就必须保证绑定事件是同步的,即同步执行。

转载于:https://www.cnblogs.com/viccici/p/3948714.html

  • 点赞
  • 收藏
  • 分享
  • 文章举报
baiqian1997 发布了0 篇原创文章 · 获赞 0 · 访问量 101 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐