微信小程序排坑指南详解


Posted in Javascript onMay 23, 2018

本文为大家分享了微信小程序排坑指南,供大家参考,具体内容如下

no.1 背景图不显示

微信小程序里面是允许用户自定义背景图的,但是限定了背景图的路径及地址,之前一直用相对路径来写,微信开发者工具中也显示出了背景图,误以为没有问题,但是预览的时候发现手机中不显示背景图,这就是今天介绍的第一个坑,背景图不允许为本地图片。

解决方法:

第一、用在线图片转base64码的方法,这种方法的优点在于图片不存储在本地或者服务器上,占用空间小修改方便,缺点是小图片处理效果更好,大图代码相当的长,长的都不想看他...

第二、将图片上传至服务器,引用图片地址就可以了,方便快捷,不过修改麻烦且占用服务器空间。

no.2 下拉没有触发onPullDownRefresh

//下拉事件
onPullDownRefresh: function() {
 console.log("好用不?")
 wx.showToast({
  title: '没事儿别乱拉',
  icon: 'success',
  duration: 2000
 })
},
//上拉事件
onReachBottom: function() {
 wx.showToast({
  title: '没事儿别乱拽',
  icon: 'success',
  duration: 2000
 })
}

上面代码是完全没有问题的,但是预览了以后发现只有向上拽是好用的,下拉完全没有反应,这就郁闷了,难道官方的方法有问题?

其实不是的,原因是因为官方默认是关闭了下拉事件,只要去app.json文件里面修改windows里面参数就可以了,代码如下:

"window": {
 "enablePullDownRefresh":true //开启下拉功能
}

no.3 如何取消监听重力感应API

微信小程序并没有提供摇一摇API接口,但是提供了一个重力感应的API 「wx.onAccelerometerChange(CALLBACK)」,我们可以用这个方法来模拟微信摇一摇功能,代码如下:

Page({
 onShow: function () {
  wx.onAccelerometerChange(function (e) {
   console.log(e.x)
   console.log(e.y)
   console.log(e.z)
   if (e.x > 1 && e.y > 1) {
    wx.showToast({
     title: '摇一摇成功',
     icon: 'success',
     duration: 2000
    })
   }
  })
 },
 onHide: function(){
  
 }
})

但如果小程序需要启用tabbar的话,这样启用重力感应API会使tabbar下面所有页面都会监听到重力感应数据,导致模拟摇一摇在所有页面都能出现摇一摇的结果,这并不是我们想要的,我们只是想在tabbar下其中一个页面允许他获取到重力感应数据,那么就需要我们自己加入一个是否在当前页面的判断,根据判断结果来启用监听重力感应API,代码修改如下:

Page({
 isShow: false,
 onShow: function () {
  var that = this;
  this.isShow = true;
  wx.onAccelerometerChange(function (e) {
   if(!that.isShow){
    return
   }
   console.log(e.x)
   console.log(e.y)
   console.log(e.z)
   if (e.x > 1 && e.y > 1) {
    wx.showToast({
     title: '摇一摇成功',
     icon: 'success',
     duration: 2000
    })
   }
  })
 },
 onHide: function(){
  this.isShow = false;
 }
})

修改以后重新编译预览就达到我们想要的效果了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS BASE64编码 window.atob(), window.btoa()
Mar 09 Javascript
jQuery.Validate 使用笔记(jQuery Validation范例 )
Jun 25 Javascript
Javascript判断图片尺寸大小实例分析
Jun 16 Javascript
javascript中callee与caller的区别分析
Apr 20 Javascript
解决JS请求服务器gbk文件乱码的问题
Oct 16 Javascript
jQuery实现获取绑定自定义事件元素的方法
Dec 02 Javascript
js实现简单排列组合的方法
Jan 27 Javascript
JS动态添加选项案例分析
Oct 17 Javascript
Angular 4依赖注入学习教程之简介(一)
Jun 04 Javascript
发布订阅模式在vue中的实际运用实例详解
Jun 09 Javascript
如何自定义微信小程序tabbar上边框的颜色
Jul 09 Javascript
jQuery - AJAX load() 实例用法详解
Aug 27 jQuery
关于vue-router的那些事儿
May 23 #Javascript
基于Vue自定义指令实现按钮级权限控制思路详解
May 23 #Javascript
详解React+Koa实现服务端渲染(SSR)
May 23 #Javascript
JavaScript+H5实现微信摇一摇功能
May 23 #Javascript
浅谈使用mpvue开发小程序需要注意和了解的知识点
May 23 #Javascript
vue动态路由配置及路由传参的方式
May 23 #Javascript
vue-cli项目根据线上环境分别打出测试包和生产包
May 23 #Javascript
You might like
PHP三种方式实现链式操作详解
2017/01/21 PHP
PHP addAttribute()函数讲解
2019/02/03 PHP
一个可绑定数据源的jQuery数据表格插件
2010/07/17 Javascript
Javascript实现仿WebQQ界面的“浮云”兼容 IE7以上版本及FF
2011/04/27 Javascript
给js文件传参数(详解)
2014/07/13 Javascript
JS实现关键字搜索时的相关下拉字段效果
2014/08/05 Javascript
JavaScript简单表格编辑功能实现方法
2015/04/16 Javascript
详解AngularJS中的表达式使用
2015/06/16 Javascript
JS实现星星评分功能实例代码(两种方法)
2016/06/09 Javascript
从零开始做一个pagination分页组件
2017/03/15 Javascript
详解Vue-Router源码分析路由实现原理
2019/05/15 Javascript
js对象简介与基本用法示例
2020/03/13 Javascript
Vue数据双向绑定原理实例解析
2020/05/15 Javascript
express异步函数异常捕获示例详解
2020/11/30 Javascript
[53:52]OG vs EG 2018国际邀请赛淘汰赛BO3 第二场 8.23
2018/08/24 DOTA
python中as用法实例分析
2015/04/30 Python
利用Python爬取可用的代理IP
2016/08/18 Python
Python实现图片转字符画的示例
2017/08/22 Python
Python实现将照片变成卡通图片的方法【基于opencv】
2018/01/17 Python
python3.5基于TCP实现文件传输
2020/03/20 Python
Pandas读取并修改excel的示例代码
2019/02/17 Python
Python 类的魔法属性用法实例分析
2019/11/21 Python
python中round函数如何使用
2020/06/19 Python
python tkinter实现连连看游戏
2020/11/16 Python
利用html5 canvas动态画饼状图的示例代码
2018/04/02 HTML / CSS
HTML5实现经典坦克大战坦克乱走还能发出一个子弹
2013/09/02 HTML / CSS
【HTML5】3D模型--百行代码实现旋转立体魔方实例
2016/12/16 HTML / CSS
英国乐购杂货:Tesco Groceries
2018/11/29 全球购物
美津浓巴西官方网站:Mizuno巴西
2019/07/24 全球购物
波兰最早的运动鞋精品店之一:Street Supply
2019/08/29 全球购物
函授自我鉴定范文
2014/02/06 职场文书
2015年世界无车日活动总结
2015/03/23 职场文书
2019垃圾分类宣传口号汇总
2019/08/16 职场文书
2019年关于小学生课外阅读情况的分析报告
2019/12/02 职场文书
详解运行Python的神器Jupyter Notebook
2021/06/03 Python
彻底弄懂Python中的回调函数(callback)
2022/06/25 Python