1. 对象中某个键值的数据为0,该数据在页面显示为空?
- 问题原因:Mpvue框架源码中做了修改
- 解决方法:修改Mpvue源码,在
node_modules文件夹下的mpvue文件夹中找到index.js文件,将第5474行修改为如下即可。
if (oldData[itemKey] !== newData[itemKey]) {
data[key + '.' + itemKey] = newData[itemKey];
}
2. 微信小程序原生组件,导致的页面穿透问题?
问题原因:小程序原生组件层级最高,不管我们其它标签设置的z-index值为多大都会被小程序原生组件遮挡住解决方法 :1. 使用cover-view或 cover-image替代其它标签,这两个组件也是原生组件,可以覆盖其它原生组件,要设置z-index。 2.将原生组件隐藏 (根据使用场景来决定)<cover-view>内只能嵌套 <cover-view> <cover-image> <button> <navigator>,其它标签在真机上都会被忽略掉。
3. 微信小程序页面遮罩层的滚动穿透问题?
- 解决方法:
mpvue中使用@touchmove.stop="touchmoveHandler",注意touchmoveHandler要设置一个空方法,否则会报警。
- 减少流量
- 减少图片体积,优化图片加载速度,提高用户体验。
5. 微信小程序,触发任意事件,Echarts视图会重新渲染问题
个人理解:当触发事件后数据发生改变,触发视图更新,而echarts视图也会随之进行刷新。解决方法:关闭echarts的动画效果。
6.Mpvue版本升级
- 运行vue init mpvue/mpvue-quickstart 项目名称,重新生成一个项目
- 打开项目安装依赖以及必要的插件,安装完成后启动项目,如果没有报错,说明项目已经创建成功
- 替换必要的文件夹,将低版本项目中的src、static、build等文件夹替换到高版本的项目中