小程序中wx:if 和hidden的理解

官方文档原话:

wx:if vs hidden
1、因为 wx:if 之中的模板也可能包含数据绑定,所以当 wx:if 的条件值切换时,
框架有一个局部渲染的过程,因为它会确保条件块在切换时销毁或重新渲染。

2、同时 wx:if 也是惰性的,如果在初始渲染条件为 false,框架什么也不做,
在条件第一次变成真的时候才开始局部渲染。

3、相比之下,hidden 就简单的多,组件始终会被渲染,只是简单的控制显示与隐藏。

一般来说,wx:if 有更高的切换消耗而 hidden 有更高的初始渲染消耗。
因此,如果需要频繁切换的情景下,用 hidden 更好,如果在运行时条件不大可能改变则 wx:if 较好。
从实际应用当中的理解:
如果需要渲染的组件包含绑定数据,比如展示一个model,isShow控制是否展示,而model的内容需要从后台加载。
一开始数据未加载完成时,isShow为false,加载完成并且判断有所需要展示的内容,isShow变为true
这个时候就满足12两点,这种情况使用wx:if

另外hidden相当于display属性,只是简单的控制显示与隐藏,不会被重新渲染,
若展示内容不会改变的情况可用hidden

你可能感兴趣的:(小程序,小程序)