异常描述: 点击按钮获取用户手机号码,有的时候会出现点击无反应或很久之后才弹出用户授权获取手机号码的弹窗,这种情况下,也会出现点击穿透的问题(详见:微信小程序开发——连续快速点击按钮调用小程序api返回后仍然自动重新调用的异常处理) 异常解析: 1. getPhoneNumber的使用: 对于 getPhoneNumber(OBJECT) API,由于小程序需要用户主动触发才能发起获取手机号接口,所以该功能不由 API 来调用,需用 <button> 组件的点击来触发(具体使用方法详见getP…
微信小程序官方是没有提供退出的API的,但是在navigator这个组件中,是有退出这个功能的:详情参考官方文档:navigator.示例代码:1 navigator open-type="exit" target="miniProgram"关闭小程序/navigator不过这个 ...       微信小程序官方是没有提供退出的API的,但是在navigator这个组件中,是有退出这个功能的: 详情参考官方文档:navigator. 示例代码: 不过这个功能最低支…
最近帮人家做一个微信小程序,刚好想熟悉一下.由于牵扯到多用户使用系统,以及数据共享,所以自然架构选择了,客户端和服务器的方式. 后台服务器是windows server,后台程序是.Net  WebApi,跑在IIS下面,因为不想系统太重,数据量不大,所以选择了xml 作为数据库 客户端,服务器架构的微信小程序坑如下 第一坑:(五项条件请具备) 1.一个已备案的域名(二级域名可以的),不是localhost.也不是127.0.0.1,域名不能加端口 (所以不要梦想可以搭在局域网里使用了,那是不可…
微信小程序要求所有网络请求都走ssl加密,因此我们开发服务端接口需要配置为https 这篇文章介绍一下如何 在 startssl 申请一个免费的ca证书. 1. 打开网站  https://www.startssl.com/ ,用邮箱注册一个账号并登陆,这一步就不介绍了 2. 点击申请免费证书 下一步点击生成dv 证书 3. 输入你的域名和 csr 这里的csr需要自己生成一下. 可以用他提供的 startcomtool.exe 生成,或者直接运行命令 openssl req -newkey r…
微信小程序的开发工具,在新建项目的时候,默认提示填写APP ID,如果不填写AppID 也是可以本地测试和开发的,但是无法通过手机调试,只能在开发工具里查看 如果需要真机调试微信小程序,需要安装微信6.3.30 版本才能使用 ------ 本文原文链接 http://www.cnblogs.com/likwo/p/6054490.html 好推微信小程序统计 - 最专业的微信小程序统计工具,并提供免费微信https云后台 http://weixin.hotapp.cn ------ 那从哪获取微…
本文转自:http://blog.csdn.net/qq_31383345/article/details/53014610 今天遇到微信小程序的用户头像设置功能,做笔记. 先上gif: 再上代码: 小demo,代码很简单. 1.index.wxml <!--index.wxml--> <button style="margin:30rpx;" bindtap="chooseimage">获取图片</button> <ima…
前言. 微信小程序的运行环境不是在浏览器下运行的.所以不能以cookie来维护登录态.下面我就来说说我根据官方给出的方法来写出的维护登录态的方法吧. 一.登录态维护 官方的文档地址:https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-login.html#wxloginobject 通过 wx.login() 获取到用户登录态之后,需要维护登录态.开发者要注意不应该直接把 session_key.openid 等字段作为用户的标识或者 sessio…
1. 超链接导航失效: 小程序规则——wx.navigateTo 和 wx.redirectTo 不允许跳转到 tabbar 页面,只能用 wx.switchTab 跳转到 tabbar 页面…
对于一些涉及后端接口请求的单击事件,不论后端是否做了请求限制,前端还是有必要进行点击防重处理的. 这样既能减少对服务器端的压力,也能有效防止因重复请求而造成一些不可预期的异常. 尤其是接口请求结果处理的逻辑中有需要调用小程序api,如获取手机号码授权.支付.领取卡券这些API. 虽然这些API都能调起自己的原生界面,但是从请求到相关原生界面展示出来之前是会有一定的时间的,如果在这个空档用户快速点击,那么就会造成接口被重复请求,直接回影响到小程序API的调用. 对于点击防重,以前用过一种比较笨的方…
在小程序开发过程中有两种变量,一种是定义在app,js里面的globalData定义的全局变量,另一种是在各个页面app,data里面的定义的变量. 一:全局变量的定义,获取值,赋值,修改 app.js定义 APP({ globalData:{userinfo:“”}, }) a页面获取值:a.js里面写法 var app=getApp() Page:({ data:{ data:{}   //变量数据 }, onLoad:function() { var that=this; //获取值 th…