微信小程序开发技术细节

来源:互联网 发布:linux内核编译教程 编辑:程序博客网 时间:2024/05/24 05:55

wx:if VS hidden
wx:if和hidden都是条件渲染,都可以在某个特定条件情况下不显示特定的控件内容,那么他们差异是什么呢?
特点:
1. wx:if 他是惰性的,条件为true的时候才渲染,false的时候不做任何操作,因此使用这个方式可以减少在页面加载的时候被渲染的控件数,从而可以提高页面的loading速度,但每次条件改变都会重新渲染,因此如果频繁修改该条件的时候就会面临不断渲染的性能问题。
2. hidden 无论是否显示,这个控件都会被渲染,因此在启动的时候必会被渲染,造成loading较慢,他的操作只是修改是否可见,因此频繁修改他的属性不会造成运行性能问题。

wx:key到底是干啥用的?
我们知道,微信前台页面显示的内容取决于配置的数据内容。当绑定的数据更新后,ui会收到更新后的信息,页面对应控件重新渲染。此时有一个问题:如果你已经在控件上设置了基本内容,比如input和switch控件,重新渲染会丢失内容,只要将wx:key设置到控件上,该控件就不会被重新渲染从而导致丢失当下的数据,微信只是将这个控件进行重新排序,不会销毁和渲染该控件,不但会保存临时信息还会加速性能。

“小助君”公众号专门帮助中小公众号运营的公众号,欢迎大家来交流小程序。

0 0
原创粉丝点击