开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第13天,点击查看活动详情
一、数据绑定
基本原则
(1)在data中定义数据 (2)在wxml中使用数据
在data中定义页面的数据
Mustache语法(插值表达式):
<view>{{ 要绑定的数据名称 }}</view>
-
动态绑定内容:
-
动态绑定属性:
- 三元运算:(调试面板AppData看数字)
二、事件绑定
事件渲染层到逻辑层的通讯方式
常用事件:
事件对象的属性列表
- 区分target和currentTarget的区别:
target: 触发该事件的源头组件 currentTarget: 当前事件所绑定的组件
上面的这个触发事件(内部按钮点击后冒泡触发view的tap事件),e.target是button组件,e.currentTarget是当前的view组件
- bindinput
<input type="text" value="{{msg}}" bindinput="inputHandler"/>
- value内放默认值,inputHandle内用输入框内容赋值给msg使得数据动态传输(msg = 输入框内容)
数据赋值
主要就是编写一个函数调用this.setData({})
事件传参
- 使用data-*传递参数,*代表参数的名字,用event.target.dataset.参数名获得参数值
条件渲染
- 使用wx:if"{{condition}}" , wx:elif"{{condition}}" , wx:else"{{condition}}"
<view wx:if="{{type ==1}}">男</view>
<view wx:elif="{{type == 2}}">女</view>
<view wx:else>保密</view>
(data放type:1)
- 使用block控制组件的显示与隐藏(block不作为一个组件,只用于包裹其他组件)
- 直接使用hidden=“{{condition}}”也能控制元素的显示与隐藏 ,condition可以是true或false(要通过data中的数据控制)
wx:if与hidden的对比
- wx:if以动态创建和移除元素的方式(节点元素消失),控制元素的展现和隐藏【控制条件比较复杂】
- hidden以切换样式的方式(类似display:none/block),控制元素的展现与隐藏【频繁切换】