小程序的数据绑定主要通过WXML标签语言实现的。这种类似MVVM的方式,但是标签和VUE有点差异。
WXML是框架设计的一套标签语言,结合基础组件、事件系统,可以构建出页面的结构。WXML 中的动态数据均来自对应 Page 的 data。 1)数据绑定 1、简单绑定 数据绑定使用 Mustache 语法(双大括号{{ }})将变量包起来,可以作用于: 内容
<!--wxml--> <view> {{message}} </view> // page.js Page({ data: { message: 'Hello MINA!' } })组件属性(需要在双引号之内)
<view id="item-{{id}}"> </view> Page({ data: { id: 0 } })控制属性(需要在双引号之内)
<view wx:if="{{condition}}"> </view> Page({ data: { condition: true } })关键字(需要在双引号之内) true:boolean 类型的 true,代表真值。 false: boolean 类型的 false,代表假值。
<checkbox checked="{{false}}"> </checkbox>特别注意:不要直接写 checked=“false”,其计算结果是一个字符串,转成 boolean 类型后代表真值。 运算 可以在 {{}} 内进行简单的运算,支持的有如下几种方式:
三元运算
<view hidden="{{flag ? true : false}}"> Hidden </view>算数运算
<view> {{a + b}} + {{c}} + d </view> Page({ data: { a: 1, b: 2, c: 3 } })view中的内容为 3 + 3 + d。 逻辑判断
<view wx:if="{{length > 5}}"> </view>2)列表渲染 3)条件渲染 4)模板
数据绑定、列表渲染、条件渲染、模板、引用