数据绑定

  • 1、为什么会有数据绑定:

  • 用户界面呈现会因时刻不同、数据发生变化而有所不同。或是因为用户操作发生了动态改变,这就要求程序的运行过程中,要有动态的去改变渲染界面的能力,从而达到更好的用户体验。
  • 在Web开发中,借助JavaScript并通过DOM接口,完成界面的动态更新;
  • 在小程序中,使用WXML语言提供的数据绑定功能,完成界面的动态更新;
  • 2、数据绑定语法:

  • WXML 中的动态数据均来自对应 Page 的 data;
  • 数据绑定使用 Mustache 语法(双大括号)将变量包起来。
    {{ value }}
  • 3、数据绑定基本用法:

3.1 内容绑定:

内容绑定是数据绑定的最基本用法,可以在标签内渲染动态的内容,需要在双引号之内。

<view> {{ message }} </view>
Page({
  data: {
    message: 'Hello MINA!'
  }
})
3.2 组件属性绑定:

可以实现动态属性,借助动态属性,可以实现如下操作:
——动态样式;
——动态宽度;
——动态长度;
——.....

<view id="item-{{id}}"> </view>
Page({
  data: {
    id: 0
  }
})
3.3关键字:

需要在双引号之内:
true:boolean 类型的 true,代表真值。
false: boolean 类型的 false,代表假值。

<checkbox checked="{{false}}"> </checkbox>

——注意: 不要直接写 checked="false",其计算结果是一个字符串,转成 boolean 类型后代表真值。

3.4 运算:

可以在 {{}} 内进行简单的运算,支持的有如下几种方式:

  • 三元运算:可以简化代码,减少代码量,提升代码的可读性。
<view hidden="{{flag ? true : false}}"> Hidden </view>
  • 算数运算:标签内支持简单的加减乘除运算。
<view> {{a + b}} + {{c}} + d </view>
Page({
  data: {
    a: 1,
    b: 2,
    c: 3
  }
})
  • 逻辑判断:
<view wx:if="{{length > 5}}"> </view>
  • 字符串运算:标签内支持对字符串的操作。
<view>{{"hello" + name}}</view>
Page({
  data:{
    name: 'MINA'
  }
})
  • 数据路径运算: WXML支持对对象、数组的路径操作,读取其内部的数据。
<view>{{object.key}} {{array[0]}}</view>
Page({
  data: {
    object: {
      key: 'Hello '
    },
    array: ['MINA']
  }
})
3.5 组合:

也可以在 Mustache 内直接进行组合,构成新的对象或者数组。

  • 数组:
<view wx:for="{{[zero, 1, 2, 3, 4]}}"> {{item}} </view>
Page({
  data: {
    zero: 0
  }
})

最终组合成数组[0, 1, 2, 3, 4]

  • 对象: WXML可以在 Mustache内进行对象的组合。
<template is="objectCombine" data="{{for: a, bar: b}}"></template>
Page({
  data: {
    a: 1,
    b: 2
  }
})

最终组合成的对象是{for: 1, bar: 2}

也可以用扩展运算符... 来将一个对象展开

<template is="objectCombine" data="{{...obj1, ...obj2, e: 5}}"></template>
Page({
  data: {
    obj1: {
      a: 1,
      b: 2
    },
    obj2: {
      c: 3,
      d: 4
    }
  }
})

最终组合成的对象是{a: 1, b: 2, c: 3, d: 4, e: 5}

——注意:

  • 如果组合时,出现了相同的变量名,后面的变量会覆盖前面的变量;
  • 花括号和引号之间如果有空格,空格最终将解析成为字符串。
<view wx:for="{{[1,2,3]}} ">
  {{item}}
</view>

等同于

<view wx:for="{{[1,2,3] + ' '}}">
  {{item}}
</view>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,284评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,115评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,614评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,671评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,699评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,562评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,309评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,223评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,668评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,859评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,981评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,705评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,310评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,904评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,023评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,146评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,933评论 2 355

推荐阅读更多精彩内容

  • WXML 中的动态数据均来自对应 Page 的 data。 简单绑定 数据绑定使用 Mustache 语法(双大括...
    LYSNote阅读 1,388评论 0 1
  • 数据绑定分为单项绑定和双向绑定两种。单向绑定上,数据的流向是单方面的,只能从代码流向 UI;双向绑定的数据是双向的...
    Lin野人阅读 806评论 0 0
  • 郑老师说了一句话:所谓的专业很多时候是有效时间的积累。至少达到一个本科生的水平,需要每天二十分钟持续一年的时间。
    AronGao阅读 188评论 0 0
  • 文/莫小微 01 周末的早上,适合做梦。 梦里,和金发碧眼的外国帅哥品尝地窖里的藏酒,在菜菌河畔喝完下午茶,又牵着...
    莫小微阅读 850评论 59 75
  • 我对你根本没抱幻想。”他说道,“我知道你愚蠢、轻佻、头脑空虚,然而我爱你。我知道你的企图、你的理想,你势利、庸俗,...
    耀丶二月阅读 137评论 0 0