表示小程序的第一个项目就踩坑这么多,难受………… 这是我个人的项目,最下面是我自己的博客地址。感觉作为程序员不分享不行,不然我这么多问题都怎么解决的。还不都是百度。谢谢大家批评
一、小程序navigateTo网络延迟产生连续跳转问题,采用节流函数
//调用封装的节流函数方式防止bug,一秒内只能跳转一次
that.binging();
//采用节流函数方式,解决微信延迟多次跳转bug
,binging:util.throttle(function () {
wx.navigateTo({
url:'/pages/index/binding/binding'
});
}, 500)
//节流函数,一定时间内只能执行一次
//参数1:函数,参数2:间隔时间毫秒数,1000为一秒
function throttle(fn, gapTime) {
if (gapTime == null || gapTime == undefined) {
gapTime = 1000
}
let lastTime = null;
// 返回新的函数
return function () {
let nowTime = + new Date();
if (nowTime - lastTime > gapTime || !lastTime) {
fn.apply(this, arguments); //将this和参数传给原函数
lastTime = nowTime
}
}
}
二、小程序苹果机和安卓机样式不兼容(最坑,不同的苹果手机展示效果还不一样,比如新苹果正常,老苹果异常)
1、页面返回切换,发现上个页面走位异常
把所有内容放在一个view里面,出现问题的是当时image标签在外部,导致返回页面的时候整个页面撑开,错位
2、文字安卓机定位基于上个元素,苹果机基于页面顶部
posation:absolute,问题导致,保持页面结构一致,去除即可。调整页面样式
3、canvas隐藏问题
自己overflow要写在父级元素上面,不然连安卓有时候都会隐藏不了
4、安卓机canvas上层div能点击事件,苹果手机不行
解决:不要让别的元素在canvas上面,调整页面样式
三、无法解决问题
小程序input会闪烁失去焦点,键盘拉起异常,微信bug
四、小程序页面生命周期问题
1、onReady无法保证页面正常加载完毕情况,组件无法获取
采用定时器,定时获取,获取成功才出发事件
---------------------
作者:海天酱油zz
来源:CSDN
原文:https://blog.csdn.net/qq_32858649/article/details/84650394
版权声明:本文为博主原创文章,转载请附上博文链接!