微信小程序排坑指南详解


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 相关文章推荐
FileUpload 控件 禁止手动输入或粘贴的实现代码
Apr 07 Javascript
javascript:文字不间断向左移动的实例代码
Aug 08 Javascript
Jquery中基本选择器用法实例详解
May 18 Javascript
jQuery拖动元素并对元素进行重新排序
Dec 30 Javascript
jquery悬浮提示框完整实例
Jan 13 Javascript
实例讲解JS中setTimeout()的用法
Jan 28 Javascript
JavaScript生成带有缩进的表格代码
Jun 15 Javascript
jQuery web 组件 后台日历价格、库存设置的代码
Oct 14 Javascript
Bootstrap Table使用方法解析
Oct 19 Javascript
详解Vue CLI3 多页应用实践和源码设计
Aug 30 Javascript
在vue中根据光标的显示与消失实现下拉列表
Sep 29 Javascript
小程序自定义弹框效果
Nov 16 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
漫荒推荐:画风超赞的国风漫画推荐 超长假期不无聊
2020/03/08 国漫
php mysql数据库操作分页类
2008/06/04 PHP
php关于array_multisort多维数组排序的使用说明
2011/01/04 PHP
php !function_exists("T7FC56270E7A70FA81A5935B72EACBE29"))代码解密
2011/01/07 PHP
php+html5+ajax实现上传图片的方法
2016/05/14 PHP
PHP实现负载均衡session共享redis缓存操作示例
2018/08/22 PHP
js模拟滚动条(横向竖向)
2013/02/22 Javascript
dul无法加载bootstrap实现unload table/user恢复
2016/09/29 Javascript
Angularjs 创建可复用组件实例代码
2016/10/09 Javascript
JS中from 表单序列化提交的代码
2017/01/20 Javascript
jQuery实现定时隐藏对话框的方法分析
2018/02/12 jQuery
angularjs结合html5实现拖拽功能
2018/06/25 Javascript
vue elementUI使用tabs与导航栏联动
2019/06/21 Javascript
js实现一个简易计算器
2020/03/30 Javascript
Python字符遍历的艺术
2008/09/06 Python
Java Web开发过程中登陆模块的验证码的实现方式总结
2016/05/25 Python
Python实现字符串格式化输出的方法详解
2017/09/20 Python
K-近邻算法的python实现代码分享
2017/12/09 Python
在python中获取div的文本内容并和想定结果进行对比详解
2019/01/02 Python
详解Python Matplot中文显示完美解决方案
2019/03/07 Python
linux环境下安装python虚拟环境及注意事项
2020/01/07 Python
Django查询优化及ajax编码格式原理解析
2020/03/25 Python
基于Django signals 信号作用及用法详解
2020/03/28 Python
tensorflow模型转ncnn的操作方式
2020/05/25 Python
Python实现爬取并分析电商评论
2020/06/19 Python
Python利用pip安装tar.gz格式的离线资源包
2020/09/14 Python
什么是动态端口(Dynamic Ports)?动态端口的范围是多少?
2014/12/12 面试题
房务中心文员岗位职责
2014/04/16 职场文书
2014年材料员工作总结
2014/11/19 职场文书
毕业生班级鉴定评语
2015/01/04 职场文书
工会工作个人总结
2015/03/03 职场文书
趣味运动会通讯稿
2015/07/18 职场文书
2015年高校保卫处工作总结
2015/07/23 职场文书
2016年党员干部公开承诺书
2016/03/24 职场文书
总结Python连接CS2000的详细步骤
2021/06/23 Python
Python3中最常用的5种线程锁实例总结
2021/07/07 Python