Vue学习——【第二弹】

前言
上一篇文章 Vue学习——【第一弹】 中我们学习了Vue的相关特点及语法,这篇文章接着通过浏览器中的Vue开发者工具扩展来进一步了解Vue的相关工作机制 。
Vue的扩展
我们打开Vue的官方文档,点击导航栏中的生态系统,点击
接着我们就进入了中,点击右栏的链接:
之后跳转到一个新的页面,点击 now:
然后就能看到多种浏览器分别对应的Vue扩展,根据自己的需要做出选择:
国内的伙伴可能无法打开谷歌浏览器的扩展,需要在谷歌浏览器安装Vue扩展的伙伴可以自取:
点击链接
提取码:vart
我们只需要打开谷歌浏览器的设置中的扩展程序,然后打开右上角的开发者模式,将文件夹中的 .crx 拖拽过去即可 。
Vue的数据绑定
这里介绍下 v-bind(单向数据绑定) 和 v-model(双向数据绑定)
v-bind
v-bind是Vue中的指令之一,用于将数据绑定到元素属性上 。
v-bind的主要作用是动态地设置HTML元素的属性,并与Vue实例的数据绑定起来 。通过v-bind指令,我们可以将Vue实例中的数据动态地绑定到HTML元素的属性上 。这样,当Vue实例中的数据发生变化时,对应的HTML元素属性也会自动更新 。

这是单向数据绑定 v-bind
这是单向数据绑定 v-bind的简写
type="text/javascript" src="http://www.kingceram.com/JS/vue.js">type="text/javascript">new Vue({el: '#demo1',data: {name: 'hello Vue',index: {name: '你好 Vue'}}})
但是为什么说v-bind是单向数据绑定呢?我们通过浏览器上的Vue扩展来看一下 。
运行我们写好的html文件,然后在浏览器页面上右击检查,然后点击vue:
尝试一下修改data中的name或者是index中的name的值
我们看一下对应的数据是否发生改变:
我们看到当Vue实例中的数据发生变化时,对应的HTML元素属性也会自动更新 。
如果是我们更改文本框中的内容,Vue实例中对应的数据也会自动发生变化吗?
从这两个例子呈现的结果我们也可以看出 :使用单向绑定时,数据只能从data流向页面,但是无法从页面流向data(只有data–>DOM,没有DOM–>data)
在上一篇文章中还介绍了Vue中的插值语法,其实插值语法也属于单向绑定,它可以将数据从组件的实例绑定到视图中,但不能将视图中的值绑定回实例 。
同样是举例说明:
修改之前
修改之后:
关于插值语法为什么是单向数据绑定,其实也很容易理解:因为这样就可以保证组件的数据状态只能在组件内部被修改,避免了数据污染和不可预测性的问题 。而如果需要实现双向数据绑定,可以使用v-model指令 。
v-model
【Vue学习——【第二弹】】v-model是Vue中的双向数据绑定指令,Vue中的双向数据绑定是指在View层(即用户界面)中输入的数据可以自动同步到Model层中的数据,同时Model层中数据的变化也可以自动同步到View层中 。这种实时的数据同步,让Vue的开发变得更加简单和高效 。
举例:
这是双向数据绑定v-model
这是双向数据绑定v-model的简写
type="text/javascript" src="http://www.kingceram.com/JS/vue.js">type="text/javascript">new Vue({el:'#demo2',data:{name:'这是个文本框',index:{name:'这也是个文本框'}}})