微信小程序排坑指南详解


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 相关文章推荐
toString()一个会自动调用的方法
Feb 08 Javascript
读jQuery之十 事件模块概述
Jun 27 Javascript
suggestion开发小结以及对键盘事件的总结(针对中文输入法状态)
Dec 20 Javascript
jquery实现图片按比例缩放示例
Jul 01 Javascript
javascript中递归函数用法注意点
Jul 30 Javascript
js和jq使用submit方法无法提交表单的快速解决方法
May 17 Javascript
Google Maps基础及实例解析
Aug 06 Javascript
jQuery Ajax Post 回调函数不执行问题的解决方法
Aug 15 Javascript
浅述Javascript的外部对象
Dec 07 Javascript
原生js实现可拖拽效果
Feb 28 Javascript
Vue实现简单分页器
Dec 29 Javascript
vue不操作dom实现图片轮播的示例代码
Dec 18 Javascript
关于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系统命令函数使用分析
2013/07/05 PHP
php 注册时输入信息验证器的实现详解
2013/07/05 PHP
PHP5全版本绕过open_basedir读文件脚本漏洞详细介绍
2015/01/20 PHP
php线性表的入栈与出栈实例分析
2015/06/12 PHP
Apache服务器下防止图片盗链的办法
2015/07/06 PHP
微信公众平台DEMO(PHP)
2016/05/04 PHP
一个简单的JS鼠标悬停特效具体方法
2013/06/17 Javascript
js实现div闪烁原理及实现代码
2014/06/24 Javascript
javascript实现下雪效果【实例代码】
2016/05/03 Javascript
简单理解vue中el、template、replace元素
2016/10/27 Javascript
AngularJS使用ng-inlude指令加载页面失败的原因与解决方法
2017/01/19 Javascript
Vue 2.0中生命周期与钩子函数的一些理解
2017/05/09 Javascript
Vue.js 中的 $watch使用方法
2017/05/25 Javascript
JS检测window.open打开的窗口是否关闭
2017/06/25 Javascript
详解基于Vue cli生成的Vue项目的webpack4升级
2018/06/19 Javascript
vue 中this.$set 动态绑定数据的案例讲解
2021/01/29 Vue.js
[02:52]2014DOTA2西雅图国际邀请赛 CIS战队巡礼
2014/07/07 DOTA
Python中线程的MQ消息队列实现以及消息队列的优点解析
2016/06/29 Python
python+opencv实现的简单人脸识别代码示例
2017/11/14 Python
python3+PyQt5实现自定义窗口部件Counters
2018/04/20 Python
Python 监测文件是否更新的方法
2019/06/10 Python
python opencv 读取图片 返回图片某像素点的b,g,r值的实现方法
2019/07/03 Python
Python 获取numpy.array索引值的实例
2019/12/06 Python
Python图像处理库PIL的ImageFont模块使用介绍
2020/02/26 Python
Python爬虫爬取杭州24时温度并展示操作示例
2020/03/27 Python
Python按照list dict key进行排序过程解析
2020/04/04 Python
pytorch读取图像数据转成opencv格式实例
2020/06/02 Python
美国爆米花工厂:The Popcorn Factory
2019/09/14 全球购物
意大利网上书店:LaFeltrinelli
2020/06/12 全球购物
输入N,打印N*N矩阵
2012/02/20 面试题
linux面试题参考答案(8)
2015/08/11 面试题
军校制空专业毕业生自我鉴定
2013/11/16 职场文书
服务明星事迹材料
2014/12/29 职场文书
个人求职自荐信范文
2015/03/06 职场文书
企业年会祝酒词
2015/08/11 职场文书
Win11任务栏无法正常显示 资源管理器不停重启的解决方法
2022/07/07 数码科技