《智能前端技术与实践》——第 2 章 前端开发基础 ——2.7 微信小程序开发——2.7.2 页面描述文件(2)

简介: 《智能前端技术与实践》——第 2 章 前端开发基础 ——2.7 微信小程序开发——2.7.2 页面描述文件(2)

《智能前端技术与实践》——第 2 章 前端开发基础 ——2.7 微信小程序开发——2.7.2 页面描述文件(1): https://developer.aliyun.com/article/1228017?groupCode=tech_library


2.条件渲染


所谓条件渲染是指根据绑定表达式的值来判断是否渲染当前组件,如代码清单 2-32 所示。


代码清单 2-32


<!-- 三元运算 --><viewclass="description"hidden="{{desFlag?true:false}}">{{description}}
</view>


在代码清单 2-32 中,当 desFlag 变量的值为 true 时,view 组件将不会被渲染;当 desFlag 变量的值为 false 时,将 view 组件渲染输出到页面。


在小程序中,使用另一种方式来进行类似的条件渲染,即使用 wx:if=""来判断是否需要渲 染该代码块,如代码清单 2-33 所示。


代码清单 2-33

<viewwx:if="{{condition}}"> True </view>


在代码清单 2-33 中,当 condition 变量的值为 true 时,view 组件将被渲染输出;否则,该组 件将不会被渲染。我们也可以用 wx:elif 和 wx:else 添加一个 else 块,如代码清单 2-34 所示。


代码清单 2-34


<viewwx:if="{{length > 5}}"> 1 </view><viewwx:elif="{{length > 2}}"> 2 </view><viewwx:else> 3 </view>

在代码清单 2-34 中,当 length 大于 5 时,界面中渲染输出的数字是 1;当 length 大于 2 且小于 或等于 5 时,界面中渲染输出的数字是 2;当 length 小于或等于 2 时,界面中渲染输出的值是 3。


接下来,我们看一下 wx:if 与 hidden 之间的区别。首先,控制渲染的逻辑变量的含义相反。 其次,wx:if 有更高的切换消耗,因为 wx:if 之中的模板可能包含数据绑定,当 wx:if 的条件值 切换时,框架有一个局部渲染的过程,来确保条件块在切换时销毁或重新渲染。而 hidden 就比 较简单,组件始终会被渲染,只是简单地控制显示与隐藏。所以,如果需要频繁切换,用 hidden 更好;如果运行时条件不大可能改变,则使用 wx:if 较好。


因为 wx:if 是一个控制属性,所以需要将它添加到一个标签上。如果一次性判断多个组件 标签,我们可以使用一个标签将多个组件包装起来,并在上面使用 wx:if 控制属性。 注意,并不是一个组件,它仅仅是一个包装元素,不会在页面中做任何渲染,只接收 控制属性,如代码清单 2-35 所示。


代码清单 2-35


<blockwx:if="{{true}}"><view> view1 </view><view> view2 </view></block>

运行结果如图 2-39 所示。


image.png


代码清单 2-35 中,当条件为 true 时,标签包含的两个 view 组件的值会被渲染出 来;当条件为 false 时,不会被渲染出来。



《智能前端技术与实践》——第 2 章 前端开发基础 ——2.7 微信小程序开发——2.7.2 页面描述文件(3): https://developer.aliyun.com/article/1228015?groupCode=tech_library

相关文章
|
2月前
|
JavaScript 前端开发 程序员
前端原生Js批量修改页面元素属性的2个方法
原生 Js 的 getElementsByClassName 和 querySelectorAll 都能获取批量的页面元素,但是它们之间有些细微的差别,稍不注意,就很容易弄错!
|
2月前
|
监控 前端开发 JavaScript
前端工程化和传统前端开发的区别是什么?
前端工程化相比传统前端开发,在开发模式、代码组织与管理、构建与部署流程、团队协作、性能优化以及技术选型等方面都有了显著的改进和提升,能够更好地应对现代前端应用开发的复杂性和高要求。
|
3月前
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
813 7
|
3月前
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
839 1
|
3天前
|
前端开发 JavaScript 开发者
前端 CSS 优化:提升页面美学与性能
前端CSS优化旨在提升页面美学与性能。通过简化选择器(如避免复杂后代选择器、减少通用选择器使用)、合并样式表、合理组织媒体查询,可减少浏览器计算成本和HTTP请求。利用硬件加速和优化动画帧率,确保动画流畅。定期清理冗余代码并使用缩写属性,进一步精简代码。这些策略不仅加快页面加载和渲染速度,还提升了视觉效果,为用户带来更优质的浏览体验。
|
2月前
|
前端开发 数据安全/隐私保护
.自定义认证前端页面
.自定义认证前端页面
15 1
.自定义认证前端页面
|
2月前
|
前端开发 JavaScript 搜索推荐
前端懒加载:提升页面性能的关键技术
前端懒加载是一种优化网页加载速度的技术,通过延迟加载非首屏内容,减少初始加载时间,提高用户访问体验和页面性能。
|
2月前
|
前端开发 JavaScript 开发者
前端小白逆袭记:从零开始,如何快速掌握前端开发精髓?
本文从一个前端小白的视角,分享了快速掌握前端开发核心技能的逆袭之路。通过学习HTML、CSS和JavaScript,逐步接触前端框架如Bootstrap、Vue.js和React,克服挑战,最终实现从入门到精通的蜕变。
34 4
|
2月前
|
前端开发 安全 JavaScript
在阿里云快速启动Appsmith搭建前端页面
本文介绍了Appsmith的基本信息,并通过阿里云计算巢完成了Appsmith的快速部署,使用者不需要自己下载代码,不需要自己安装复杂的依赖,不需要了解底层技术,只需要在控制台图形界面点击几下鼠标就可以快速部署并启动Appsmith,非技术同学也能轻松搞定。
|
3月前
|
前端开发 JavaScript
回顾前端页面发送ajax请求方式
回顾前端页面发送ajax请求方式
44 18
下一篇
开通oss服务