知识点:组件,animation,获取当前点击元素的索引与内容 微信小程序中没有select下拉选项框,所以只有自定义.自定义的话,可以选择模板的方式,也可以选择组件的方式来创建. 这次我选择了组件,这样只需引入组件和添加数据,其它的不用管,就能实现多个地方重复使用了. 第一步:创建组件所需的文件 我喜欢把共用的内容都放在和pages文件同级的地方,所以有了下面的目录结构 (1) 先创建一个自定义名字的文件夹,例如我上面的Componet (2) 再创建一个select文件夹,然后:右键这个文件…
1.在微信小程序中,想到 下拉刷新 和 上拉加载,如果是整个页面都拖动的话,可以在页面配置中,配置 enablePullDownRefresh 和 onReachBottomDistance 然后在 .js 中 使用 Page.onPullDownRefresh 和 Page.onReachButton 这样来进行. 2.上面的做法是官方推荐我们做页面的 下拉刷新 和 上拉加载 所使用的方法.但某种情况比如头部是固定的,但使用上面的方法,整个页面都拉动,会显得很奇怪.这个时候,我们的滚动实际上是…
问题: 在首次进入小程序时,我们常常会收到一些获取权限的申请,比如「获取地理位置权限」.需要微信登录时请求「获得你的公开信息(昵称.头像等)」.对于这些权限申请,开发者当然希望获得所有权限,而用户拒绝授权的情况不免存在.那么作为开发人员在考虑「用户拒绝授权」这类异常情况出现时,应该提前做好未获得授权时的兼容处理,以及用户希望授权时的再次提醒. 查看官方文档: 授权 部分接口需要经过用户授权同意才能调用.我们把这些接口按使用范围分成多个scope,用户选择对 scope来进行授权,当授权给一个sc…
最近公司做了一些有关微信小程序的项目,涉及到授权获取用户基本信息,但是在拒绝授权之后就不会再出现授权窗口: 看网上也有很多人遇到了同样的问题,所以记录下来我的处理方法,供大家和自己学习和记录: 当调用小程序 wx.getUserInfo(OBJECT) 获取用户基本信息时,需要用户进行授权操作,如果用户点击了拒绝,则再次调用该方法就不会出现对应的授权窗口,很是让人困惑: 找了许久,最后让我发现了它:------> wx.openSetting(OBJECT),下面让我们认识一下: wx.open…
微信小程序-获取当前城市位置 1. 获取当前地理位置,可通过wx.getLocation接口,返回经纬度.速度等信息; 注意---它的默认工作机制: 首次进入页面,调用该api,返回用户授权结果,并保持该结果.只要用户未删除该小程序或变更授权情况,那么用户再次进入该页面,授权结果还是不变,且不会再次调用该API: 在不删除小程序的情况下,继续再次发起授权请求,需要使用wx.openSetting. 所以第一步要拿到用户的授权wx.openSetting: 2. 第二步,可通过wx.getLoca…
异常描述: 点击按钮获取用户手机号码,有的时候会出现点击无反应或很久之后才弹出用户授权获取手机号码的弹窗,这种情况下,也会出现点击穿透的问题(详见:微信小程序开发——连续快速点击按钮调用小程序api返回后仍然自动重新调用的异常处理) 异常解析: 1. getPhoneNumber的使用: 对于 getPhoneNumber(OBJECT) API,由于小程序需要用户主动触发才能发起获取手机号接口,所以该功能不由 API 来调用,需用 <button> 组件的点击来触发(具体使用方法详见getP…
在做微信小程序开发的过程中,发现小程序在本地调用接口的数据都显示,但是上传之后,发现手机体验没有数据.以下为解决办法: 1.先清除缓存试试. 2.打开微信小程序工具右上角的详情——项目设置,将“不校验合法域名.web-view(业务域名).TLS 版本以及 HTTPS 证书”勾选上,然后上传,重新刷新微信小程序官方页面,重新打开二维码进行体验. 此文章为原创,转载时请标明原文章出处,谢谢大家!…
准备 1.在http://lbs.qq.com/网站申请key 2.在微信小程序后台把apis.map.qq.com添加进request合法域名 效果 添加封装 /** * 发起网络请求 * @param {string} url * @param {object} params * @return {Promise} */ static request(url, params, method = "GET", type = "json") { console.lo…
wx.authorize({ scope: 'scope.writePhotosAlbum', success() { // 授权成功 wx.saveImageToPhotosAlbum({ filePath: that.data.tempFilePath, success() { app.func.setMask({ message: '图片保存成功', bg: 'success' }, that) return } }) }, fail:function(){ // 授权失败 wx.show…
最近堕落了,有一阵子没有更新博客园了.一是比较忙,其次也没什么好的题材和工作中的解决方案可以分享的,想想还是把罕见的反复调起原生小程序授权框的方案拿出来说说.   市面上常见的解决方案是第一次拒绝后,后面需要授权根据小程序的API调授权接口,这样的效果极low,用户体验也极差.很多同学会选择自己定制一个授权选项页面,其实这样还是很丑很鸡肋! 下面,先看看我的效果吧!最佳解决方案,丝毫不影响用户体验!   这里我就简单说说思路吧,第一次授权即登录,拒绝授权我们是可以捕捉到事件的,这时候再一次调初始…