微信小程序云开发教程-WXML入门-数据绑定
发布于 4 年前 作者 fli 1646 次浏览 来自 分享

同学们大家好,我是小伊同学,今天带领大家学习WXML部分一个重要的知识点,数据绑定。


  简单来讲,数据绑定就是通过双重花括号将一个变量绑定到界面上。


  首先,我们为什么要将变量绑定到页面上呢?因为在制作一个小程序时,很多数据都是后端服务器返回给我们的,我们需要对这些数据进行处理后显示在页面上,也就是说,这些数据是动态的,我每次加载小程序都先去询问服务器,那么我就不能在代码中将这些数据直接写在前端界面中。


  例如,用户的某些操作记录,账户余额等等信息,都唯一地保存在服务器端,而小程序则完成了一个获取并展示的作用。要实现这样的效果,我们就需要在wxml使用变量,当程序运行时通过对变量赋不同的值来完成数据的加载显示。这就是数据绑定的意义。



  数据绑定的格式是,在wxml文件中需要的地方加入双花括号括号中写变量名称,然后将该变量在js文件中进行定义。当wxml在加载组件及组件的属性时,会自动将该格式下的变量名拿到js文件中寻找,并将数据值渲染到页面上。


  这样,通过js对该变量的具体值进行改变后,显示在页面上的数值就会跟着改变了。具体示例请看右边的两幅图,上面是页面的wxml文件,中间是页面的js文件,最下面则是运行结果。可以看到,我们在js中对变量的赋值直接显示到了wxml中。



  那么,到底在wxml中哪些地方可以使用数据绑定呢?主要有以下几处位置:


  第一,放在内容中,用我们之前学习的组件标签包括起来。


  第二,使用数据绑定来动态改变属性值,包括组件属性或者控制属性,这里的id就是在js中我们需要定义好的变量,而下面的控制属性wx:if语句用于控制这个组件是否显示,如果condition变量为真值则显示,为假不显示。


  最后,用于控制关键字,需要说明的是,这里的true和false并不代表变量,而是boolean类型,表示真值和假值。如果我们直接写成checked=“false”,去掉双重花括号,其计算结果是一个字符串,转成boolean类型后无论是true还是false最后都代表真值。(空字符串才为假)



  此外,也可以在{{}}内进行简单的运算,例如三元运算和算术运算。在三元运算中,这里的花括号中为一个表达式,其一般形式为变量、空格、问号、空格、数值A、冒号、数值B。当变量等于第一个值时,表达式的结果为真,也就是这里flag变量为真值,即等于true时,最终hidden属性为true,即组件被隐藏,而当flag为false时,表达式结果为假,组件不被隐藏。


  在进行算数运算时要注意,只有在双重花括号的运算符,如加号减号等,具有运算符的作用,对前后的变量值完成算术运算,而在花括号的运算符没有运算能力,仅仅是字符串。


  所以对于这里的例子来说,如果a等于1,b等于2,c等于3,d等于4,那么最终会显示3+3+d这个字符串,运算只在a变量和b变量之间完成,d由于没有加花括号,仅仅是字符串,无论d是否在js中定义或者d的值是多少都不影响结果。


  使用数据绑定还有很多方式,例如逻辑判断、字符串运算、数据路径运算等,也可以在双重花括号内直接进行组合,构成新的对象或者数组,更多内容同学们可以通过微信开发者文档自学。


  好了,本小节的内容就是这些,如果大家有什么问题,欢迎在文末留言,我们明天继续哟~

回到顶部