微信小程序页面渲染实现方法


Posted in Javascript onNovember 06, 2019

这篇文章主要介绍了微信小程序页面渲染实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

条件渲染:wx:if, wx:elif, wx:else

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

由于wx:if是一个控制属性,需要将它添加到一个标签上,如果要一次性判断多个组件标签,可以使用<block></block>标签将多个组件包装起来,并在上边使用wx:if 控制属性,

<block>
<view wx:if="{{list.length > 5}}" >1</view>
<view wx:elif="{{list.length > 2}}">2</view>
<view wx:else>3</view>
</block>

blcok 是一个包装元素,不会在页面做任何渲染。

hidhen:

在小程序中,hidden = "{{condition}}" 也能控制元素的显示和隐藏。为true隐藏,为false显示

<view hidden = "{{condition}}" >123</view>

列表渲染: wx:for

如果没有指定参数, 默认索引是index, 值是item

<view wx:for="{{userList}}" wx:key="index">索引是: {{index}}, 值是: {{item}}</view>
 
 data: {
  userList :['zhangsan', "lisi", 'wnagwu']
 }

手动指定索引和当前项的变量名:

<view wx:for="{{userList}}" wx:key="index" wx:for-index="i" wx:for-item="it">
 索引是: {{i}}, 值是: {{it}}
</view>
 
data: {
  userList :['zhangsan', "lisi", 'wnagwu']
 }

block wx:for 列表渲染

<block wx:for="{{userList}}" wx:key="index" wx:for-index="i" wx:for-item="it">
 <view>索引是: {{i}}, 值是: {{it}}</view>
</block>

key 在列表循环中的作用:

如果列表中项目的位置会动态改变或者有新的项目添加到列表中,并且希望列表中的项目保持自己的特征和状态(如<input />)中输入内容,<checkbox/>的选中状态,徐奥使用 wx:key来指定列表中项目的唯一标识符。

当数据改变触发渲染层重新渲染的时候,会校正带有key的组件,框架会确保他们被重新排序,而不是重新创建,以确保使组件保持自身状态,并且提高列表渲染时的效率。

key值的注意点:

key值必须具有唯一行,且不能动态改变。

key的值必须是数字或字符串

保留关键子*this代表在for循环中的item本身,它也可以充当key值,但是有以下限制,需要item本身是一个唯一的字符串或数字。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery获取tr并更改tr内容示例代码
Feb 13 Javascript
JavaScript验证18位身份证号码最后一位正确性的实现代码
Aug 07 Javascript
node.js中的http.response.setHeader方法使用说明
Dec 14 Javascript
javascript中callee与caller的区别分析
Apr 20 Javascript
js实现的鼠标滚轮滚动切换页面效果(类似360默认页面滚动切换效果)
Jan 27 Javascript
JS显示日历和天气的方法
Mar 01 Javascript
angularJS深拷贝详解
Mar 23 Javascript
Vue 表单控件绑定的实现示例
Aug 11 Javascript
使用html+js+css 实现页面轮播图效果(实例讲解)
Sep 21 Javascript
解决vue打包项目后刷新404的问题
Mar 06 Javascript
如何用vue-cli3脚手架搭建一个基于ts的基础脚手架的方法
Dec 12 Javascript
Vue中父子组件的值传递与方法传递
Sep 28 Javascript
微信小程序页面间传递数组对象方法解析
Nov 06 #Javascript
vue 获取及修改store.js里的公共变量实例
Nov 06 #Javascript
对vuex中getters计算过滤操作详解
Nov 06 #Javascript
node解析修改nginx配置文件操作实例分析
Nov 06 #Javascript
vuex实现像调用模板方法一样调用Mutations方法
Nov 06 #Javascript
vuex actions异步修改状态的实例详解
Nov 06 #Javascript
Windows上node.js的多版本管理工具用法实例分析
Nov 06 #Javascript
You might like
浅析php变量修饰符static的使用
2013/06/28 PHP
apache php mysql开发环境安装教程
2016/07/28 PHP
PHP SPL 被遗落的宝石【SPL应用浅析】
2018/04/20 PHP
php实现的数组转xml案例分析
2019/09/28 PHP
解决jquery异步按一定的时间间隔刷新问题
2012/12/10 Javascript
js控制表单不能输入空格的小例子
2013/11/20 Javascript
一个简单的全屏图片上下打开显示网页效果示例
2014/07/08 Javascript
jQuery事件绑定与解除绑定实现方法
2015/04/15 Javascript
测试IE浏览器对JavaScript的AngularJS的兼容性
2015/06/19 Javascript
Jquery结合HTML5实现文件上传
2015/06/25 Javascript
浅谈JavaScript 标准对象
2016/06/02 Javascript
jQuery的deferred对象使用详解
2016/09/25 Javascript
javascript 注释代码的几种方法总结
2017/01/04 Javascript
easyui 中的datagrid跨页勾选问题的实现方法
2017/01/18 Javascript
简单谈谈gulp-changed插件
2017/02/21 Javascript
Webpack打包css后z-index被重新计算的解决方法
2017/06/18 Javascript
详解node nvm进行node多版本管理
2017/10/21 Javascript
详解react-router 4.0 下服务器如何配合BrowserRouter
2017/12/29 Javascript
浅谈React Native Flexbox布局(小结)
2018/01/08 Javascript
ES6 class类链式继承,实例化及react super(props)原理详解
2020/02/15 Javascript
[46:20]CHAOS vs Alliacne 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
pycharm 使用心得(五)断点调试
2014/06/06 Python
web.py在SAE中的Session问题解决方法(使用mysql存储)
2015/06/24 Python
Python中使用urllib2模块编写爬虫的简单上手示例
2016/01/20 Python
rabbitmq(中间消息代理)在python中的使用详解
2017/12/14 Python
Python实现爬取亚马逊数据并打印出Excel文件操作示例
2019/05/16 Python
Python openpyxl读取单元格字体颜色过程解析
2019/09/03 Python
在python中使用pymysql往mysql数据库中插入(insert)数据实例
2020/03/02 Python
马来西亚奢侈品牌购物商城:Valiram 247
2020/09/29 全球购物
2014年乡镇工作总结
2014/11/21 职场文书
2014年档案管理员工作总结
2014/12/01 职场文书
2014会计年终工作总结
2014/12/20 职场文书
二年级上册数学教学计划
2015/01/20 职场文书
学校食品安全责任书
2015/01/29 职场文书
《西门豹》教学反思
2016/02/23 职场文书
【海涛dota】偶遇拉娜娅 质量局德鲁伊第一视角解说
2022/04/01 DOTA