加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

vue.js数据绑定操作详解

发布时间:2020-12-17 02:19:33 所属栏目:百科 来源:网络整理
导读:本篇章节讲解vue.js数据绑定操作。供大家参考研究具体如下: 数据绑定 响应式的数据绑定系统。建立绑定之后,DOM将和数据保持同步,无须手动维护DOM。使代码能够更加简洁易懂、提升效率。 数据绑定语法 1.文本插值 {{ }}Mustache标签 Hello {{ nam

本篇章节讲解vue.js数据绑定操作。分享给大家供大家参考,具体如下:

数据绑定

响应式的数据绑定系统。建立绑定之后,DOM将和数据保持同步,无须手动维护DOM。使代码能够更加简洁易懂、提升效率。

数据绑定语法

1.文本插值

{{ }}Mustache标签

Hello {{ name }}
Hello vue

单次插值

首次赋值后再更改vm实例属性值不会引起DOM的变化

2.HTML属性

Mustache标签{{ }}

简写:

3.绑定表达式

放在Mustache标签内的文本内容。除了直接输出属性值之外,一段绑定表达式可以由一个简单的JavaScript表达式和可选的一个或多个过滤器构成(不支持正则表达式,若需要复杂的转换,则使用过滤器或者计算属性来进行处理)。

4.过滤器

vue.js允许在表达式后添加可选的过滤器,以管道符"|"指示。

此时,filterA将name的值做为第一个参数,arg1,arg2做为第二、第三个参数传入过滤器函数中。

最终函数的返回值即为输出结果。arg1,arg2可以使用表达式,也可以加上单引号,直接传入字符串。

例如:

u,e

过滤器limitBy可以接受两个参数,第一个参数是设置显示个数,第二个参数为可选,指从开始元素的数组下标。

vue.js内置的10个过滤器(Vue.js2.0中去除)

{Number}limit,{Number}[offset],limit为显示个数,offset为开始显示数组下标。

//items为数组,且只显示数组中的前十个元素

{String | Function}targetStringOrFunction,即需要匹配的字符串或函数;"in"可选分隔符。{String}[...searchKeys],为检索的属性区域。

//检索names数组中值包含1.0的元素

<p v-for="item in items | filterBy '1.0' in 'name'">{{ item | json }}

//检索items中元素属性name值为1.0的元素输出。检索区域也可以为数组,即in [name,version],在多个属性中进行检索。

使用自定义的过滤函数,函数可以在选项methods中定义

{String|Array|Function}sortKeys,即指定排序的策略。

单个键名:

//items数组中以键名name进行降序排列

多个键名:

//使用items里的两个键名进行排序

自定义排序函数:

methods:{ customOrder: function(a,b){ return parseFloat(a.version) > parseFloat(b.version) //对比item中version的值的大小进行排序 } }

5.指令

指令的值限定为绑定表达式,即当表达式的值发生改变时,会有些特殊行为作用到绑定的DOM上。

参数:src为参数

<==>

修饰符:以半角句号.开始的特殊后缀,用于表示指令应该以特殊方式绑定。

//stop:停止冒泡。相当于调用了e.stopPropagagation().

计算属性

避免在模板中加入过重的业务逻辑,保证模版的结构清晰和可维护性。

1.基础例子

{{ firstName }}

//Gavin

{{ lastName }}

//CLY

{{ fullName }}

//Gavin CLY

注:

此时对vm.firstNamevm.lastName进行修改,始终会影响vm.fullName

2.Setter

更新属性时带来便利

表单控件

1. Text

输入框示例,用户输入的内容和

Your input is : {{ message }}

2. Radio

单选框示例:

3.Checkbox

单个勾选框,

checked: {{ checked }} //显示的是true/false

多个勾选框,

4.Select

单选

A Selected: {{ selected }}

多选

MultiSelected: {{ multiSelected.join('|') }}

5.绑定value

通过

Checkbox

选中:

true

未选中:

true

Radio

选中:

true

3.Select Options

选中:

object vm.selected.number //=> 123

6.参数特性

Class与Style绑定

1.Class绑定

对象语法:v-bind:class接受参数是一个对象,而且可以与普通的class属性共存。

vm实例中需要包含:

渲染结果为:

数组语法:v-bind:class也接受数组作为参数。

vm实例中需要包括:

渲染结果为:

使用三元表达式切换数组中的class

则渲染结果为

2.内联样式绑定(style属性绑定)

对象语法:直接绑定符合样式格式的对象。

vm实例中包含:

数组语法:v-bind:style允许将多个样式对象绑定到同一元素上。

3.自动添加前缀

在使用transform这类属性时,v-bind:style会根据需要自动添加厂商前缀。:style在运行时进行前缀探测,如果浏览器版本本省就不支持不加前缀的css属性,那就不会添加。

希望本文所述对大家vue.js程序设计有所帮助。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读