WePY如何优化小程序商城

小程序商城在啟动时会直接加载所有页面逻辑代码进内存,即便 page2 可能都不会被使用在 page1 跳转至 page2 时,page1 的逻辑代码 Javascript 数据也不会从内存中消失page2 甚至可以直接访问 page1 中的数据。

小程序商城的这种机制差异正好可以更好的实现预加载通常情况下,我们习惯将数据拉取写在 onLoad 事件中但是小程序商城的 page1 跳转到 page2,到 page2 的 onLoad 是存在一个 300ms ~ 400ms 的延时的如下图:

因为小程序商城的特性,完全可以在 page1 中预先拿取数据然后在 page2 中直接使用数据,这样就鈳以避开 redirecting 的 300ms ~ 400ms 了

用于 page1 主动传递数据给 page2,比如 page2 需要加载一份耗时很长的数据我可以在 page1 闲时先加载好,进入 page2 时直接就可以使用

扩展了生命周期,添加了 onPrefetch 事件会在 redirect 之时被主动调用。同时给 onLoad 事件添加了一个参数用于接收预加载或者是预查询的数据。


 

二、避免页面内引用多余的组件

 
 
前端语言大多面向组件开发的也就是说一个界面通常都是由许多组件组成的,这个观点是没什么问题但是,如果一个界面里面引用了大量的组件而其中有一部分在某种情况下不显示(也就是使用过当前页面里嘚某种条件来选择是否显示某些组件)。这样做虽然说也体现的是组件化开发,但是对于性能的影响是巨大的举个例子:如果我们直接将页面里面的布局部分全部删除,只是简单的将组件引进当前文件然后放进components中,观察编译的代码wxml文件内容没了,js文件没有任何变化也就是说,只要你将组件放进components中必将会将js代码引入。js代码引入便会去执行组件的生命周期函数(如果某些组件的生命周期函数中存茬耗时的操作,而这个组件又不需要显示岂不是浪费资源影响性能)。
总结一下wepy组件化开发并没有问题,前提是我们要尽量去保证引進来的组件是需要显示的否则影响性能。
}

我要回帖

更多关于 小程序商城 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信