小程序的分享 onShareAppMessage(options)
 
在页面的js文件中定义了 onShareAppMessage 函数时,页面可以表示改页面可以转发。可以在函数中设置页面转发的信息。
1. 只有定义了该函数,小程序右上角的菜单中才会有转发按钮
2. 用户点击转发按钮的时候回调用该函数
3. 该函数内需要 return 一个 Object,Object中包含转发的信息(可自定义转发的内容)
 
页面中有可以触发转发时间的地方有两个:
  一个是右上角菜单中的转发按钮
  另一个是页面中具有属性open-type且其值为share的button。(注:必须是button组件,其他组件中设置 open-type="share" 无效)
  即:<button data-name="shareBtn" open-type="share">转发</button>
  注意:实际开发中会发现这个 button 自带有样式,当背景颜色设置为白色的时候还有一个黑色的边框,刚开始那个边框怎么都去不掉,后来给button加了一个样式属性 plain="true" 以后,再在样式文件中控制样式 button[plain]{ border:0 } ,就可以比较随便的自定义样式了,比如说将分享按钮做成一个图标等
 
触发分享事件后调用的函数:
  1. onShareAppMessage: function( options ){
  2.   var that = this;
  3.   // 设置菜单中的转发按钮触发转发事件时的转发内容
  4.   var shareObj = {
  5.     title: "转发的标题", // 默认是小程序的名称(可以写slogan等)
  6.     path: '/pages/share/share', // 默认是当前页面,必须是以‘/’开头的完整路径
  7.     imgUrl: '', //自定义图片路径,可以是本地文件路径、代码包文件路径或者网络图片路径,支持PNG及JPG,不传入 imageUrl 则使用默认截图。显示图片长宽比是 5:4
  8.     success: function(res){
  9.       // 转发成功之后的回调
  10.       if(res.errMsg == 'shareAppMessage:ok'){
  11.       }
  12.     },
  13.     fail: function(){
  14.       // 转发失败之后的回调
  15.       if(res.errMsg == 'shareAppMessage:fail cancel'){
  16.         // 用户取消转发
  17.       }else if(res.errMsg == 'shareAppMessage:fail'){
  18.         // 转发失败,其中 detail message 为详细失败信息
  19.       }
  20.     },
  21.     complete: fucntion(){
  22.       // 转发结束之后的回调(转发成不成功都会执行)
  23.     }
  24.   };
  25.   // 来自页面内的按钮的转发
  26.   if( options.from == 'button' ){
  27.     var eData = options.target.dataset;
  28.     console.log( eData.name ); // shareBtn
  29.     // 此处可以修改 shareObj 中的内容
  30.     shareObj.path = '/pages/btnname/btnname?btn_name='+eData.name;
  31.   }
  32.   // 返回shareObj
  33.   return shareObj;
  34. }

微信小程序中的分享事件的更多相关文章

  1. 微信小程序中的bindTap事件(微信小程序开发QQ群:604788754)

    bindTap对应的绑定事件, 第一个:wx.navigateTo wx.navigateTo({ url:"../content/content" }) 第二个:wx.redir ...

  2. 微信小程序中事件

    微信小程序中事件 一.常见的事件有 类型 触发条件 最低版本 touchstart 手指触摸动作开始 touchmove 手指触摸后移动 touchcancel 手指触摸动作被打断,如来电提醒,弹窗 ...

  3. 微信小程序中的事件绑定

    前言: 微信小程序中的事件绑定和Vue中的事件绑定其实有很多的相似之处,所以如果有过Vue相关的经验,学起来的话还是比较容易的. js代码: // 页面级的js文件必须调用Page函数来注册页面, / ...

  4. 微信小程序中,如何阻止多次点击单击事件

    在微信小程序中,有自制对话框用于提交数据,但是会出现用户连续点击,多次提交数据的情况. //.wxml <view class="acertain" bindtap=&quo ...

  5. 微信小程序首次官方分享的纪要

    先交代备注: 这次有关小程序的分享只有技术的 QA环节,其他如产品.入口.流量.与公众号的整合等等,回答都是暂时无法给出答案或不确定: 小程序最终发布时间官方也还未确定,不过说应该就是近期: 小程序的 ...

  6. 微信小程序中target与currentTarget

    target在事件流的目标阶段:currentTarget在事件流的捕获,目标及冒泡阶段.但事件流处于目标阶段,target与currentTarget指向一样, 而当处于捕获和冒泡阶段的时候,tar ...

  7. 微信小程序中发送模版消息注意事项

    在微信小程序中发送模版消息 参考微信公众平台Api文档地址:https://mp.weixin.qq.com/debug/wxadoc/dev/api/notice.html#模版消息管理 此参考地址 ...

  8. 微信小程序中的组件使用1

    不管是vue还是react中,都在强调组件思想,同样,在微信小程序中也是使用组件思想来实现页面复用的,下面就简单介绍一下微信小程序中的组件思想. 组件定义与使用 要使用组件,首先需要有组件页面和使用组 ...

  9. 微信小程序中如何使用WebSocket实现长连接(含完整源码)

    本文由腾讯云技术团队原创,感谢作者的分享. 1.前言   微信小程序提供了一套在微信上运行小程序的解决方案,有比较完整的框架.组件以及 API,在这个平台上面的想象空间很大.腾讯云研究了一番之后,发现 ...

随机推荐

  1. 打开文件 和 字符串中%s 的大坑

    ai`....

  2. DSU on Tree浅谈

    DSU on tree 在之前的一次比赛中,学长向我们讲了了这样一个神奇的思想:DSU on tree(树上启发式合并),看上去就非常厉害--但实际上是非常暴力的一种做法;不过暴力只是看上去暴力,它在 ...

  3. android小游戏模版—重力感应

               好久没更新博客了,今天来谈谈android小游戏---重力感应,一般在游戏里运用的比較多,比方这类游戏有:神庙逃亡.极品飞车,平衡球.三围重力迷宫,重力赛车等. 首先什么是重力感 ...

  4. Oracle-本地连接没问题,远程连接有问题解决方式

    1. 问题 我的环境是oracle11gr2,本地用plsql还是toad连接都没有不论什么问题,而用别的机器远程连接就提示 无监听程序等错误. 2. 原因 oracle安装路径  --- 比如: F ...

  5. weblogic之CVE-2018-3191漏洞分析

    weblogic之CVE-2018-3191漏洞分析 理解这个漏洞首先需要看这篇文章:https://www.cnblogs.com/afanti/p/10193169.html 引用廖新喜说的,说白 ...

  6. 根据经纬度获取位置描述:百度API与高德API的区别

    百度API 使用百度坐标 1.访问方式一 http://api.map.baidu.com/geocoder/v2/?location=35.063592,118.38513&output=j ...

  7. Linux系统管理命令

    Linux系统管理命令 命令 说明 stat 显示指定文件的相关信息,比ls命令显示内容更多 who 显示在线登录用户 hostname 显示主机名称 uname 显示系统信息 top 显示当前系统中 ...

  8. ddt Ui 案例2

    准备用例文件:testcase1.py testcase2.py import ddt import unittest from HTMLTestRunner import HTMLTestRunne ...

  9. Luogu五月月赛

    首先,到此为止,我只会\(t1\).\(t2\) T1: \(\color{red}{Description}\) \(Alice\) 和 \(Bob\) 在玩游戏. 他们有 \(n\) 堆石子,第\ ...

  10. Animate.css介绍

    Animate.css简介 animate.css 动画库,预设了抖动(shake).闪烁(flash).弹跳(bounce).翻转(flip).旋转(rotateIn/rotateOut).淡入淡出 ...