zy-smile

使用uniapp开发一个微信小程序(踩坑)

  1. 页面中写有点击事件的盒子尺寸要大于20 * 20,点击范围太小的话会影响用户操作体验。

  2. 小程序里面调用的定时器要及时销毁,跳转页面时页面会销毁,但定时器并不会销毁掉,太多的定时器会占用过多的内存,影响小程序性能。

  3. 写的单个的vue文件不应该有太多的元素节点,否则加载时间长影响性能。

  4. 在优化小程序代码包体积时应该在manifest.json文件里开启分包优化

"optimization" : { "subPackages" : true }

  1. 代码在发布时应该去掉项目中的console.log打印信息,console.log也会影响小程序的页面性能,拖慢页面加载时间。

if (uni.getSystemInfoSync().platform !== "devtools") { console.log = () => {} }

  1. 项目中使用echarts图表,在官网下载时需要选择性的下载项目中用到的图表相关模块,这样可以减小echarts的js文件体积,页面中echarts图表的层级是高于弹窗的,图表会显示在弹窗上面。

解决:可以在弹窗出现的时候手动隐藏掉图表

  1. 微信小程序中页面栈最多叠加10层,最多跳转10个页面,超出10层的话就要销毁前面的页面栈。

  2. 项目中静态文件夹放的图片最好小于30kb,只放一些用到的小图标,体积大的图片可以放到后台服务器,通过远程地址引入,否则打包的时候会发现包体积特别大。

  3. 项目中引入本地图片的时候要采用相对路径地址,图片的src使用变量动态引入时要通过require的方式,否则会报错。

  4. 给小程序自定义tabbar的时候,需要给tabbar手动设置当前页面的活跃状态。

if (typeof this.$mp.page.getTabBar === 'function' && this.$mp.page.getTabBar()) {
				this.$mp.page.getTabBar().setData({
					active: 0
				})
			}
  1. 组件中不会在视图中动态变化的数据不要写在data里面,data里面的数据最好不要嵌套层级过多。

......待补充。

posted on 2023-03-09 16:02  指尖de跃动  阅读(0)  评论(0)    收藏  举报  来源

导航