本文实例讲述了vue.js数据绑定操作。分享给大家供大家参考,具体如下:
数据绑定
响应式的数据绑定系统。建立绑定之后,DOM将和数据保持同步,无须手动维护DOM。使代码能够更加简洁易懂、提升效率。
数据绑定语法
1.文本插值
{{ }}Mustache标签
<span>Hello {{ name }}</span>
data:{ name: 'vue'}== > Hello vue
单次插值
首次赋值后再更改vm实例属性值不会引起DOM的变化
<span v-once="name">{{ name }}</span>
2.HTML属性
Mustache标签{{ }}
<div v-bind:id="'id-'+id"></div>
简写:
<div :id="'id-'+id"></div>
3.绑定表达式
放在Mustache标签内的文本内容。除了直接输出属性值之外,一段绑定表达式可以由一个简单的JavaScript表达式和可选的一个或多个过滤器构成(不支持正则表达式,若需要复杂的转换,则使用过滤器或者计算属性来进行处理)。
{{ index + 1}}{{ index == 0 ? 'a' : 'b' }}{{name.split('').join('|') }}{{ var a = 1 }} //无效
4.过滤器
vue.js允许在表达式后添加可选的过滤器,以管道符"|"指示。
{{ name | uppercase }} // Vue.js将name的值传入给uppercase这个内置的过滤器中(本质是一个函数),返回字符串的大写值。{{ name | filterA | filterB }} //多个过滤器链式使用{{ name | filterA arg1 arg2 }} //传入多个参数
此时,filterA将name的值做为第一个参数,arg1,arg2做为第二、第三个参数传入过滤器函数中。
最终函数的返回值即为输出结果。arg1,arg2可以使用表达式,也可以加上单引号,直接传入字符串。
例如:
{{ name.split('') | limitBy 3 1 }} // ->u,e
过滤器limitBy可以接受两个参数,第一个参数是设置显示个数,第二个参数为可选,指从开始元素的数组下标。
vue.js内置的10个过滤器(Vue.js2.0中去除)
capitalize:字符串首字符转化为大写。
uppercase:字符串转化为大写。
lowercase:字符串转化为小写。
currency:参数为{String}[货币符号],{Number}[小数位],将数字转化成货币符号,并且会自动添加数字分节号。
{{ amount | currency '¥' 2 }} //若amount值为1000,则输出为¥1,000.00
pluralize:参数为{String}single,[double,triple],字符串复数化。
<p v-for="c in count">{{ c | pluralize 'item' }} {{ c | pliralize 'st' 'nd' 'rd' 'th' }} </p>
//输出结果:1item 1st2items 2nd3items 3rd4items 4th
新闻热点
疑难解答
图片精选