vue入门笔记-04-Vue双向绑定


Vue双向绑定.

1、什么是双向绑定?.

Vue.js是一个MVVM框架,即数据数据双向绑定,即当数据发生变化时,视图也就发生变化,当视图发生变化时,数据也会同步变化

我们说的数据双向绑定是相对于UI控件来说的,非UI控件不会涉及到数据双向绑定。

单向数据绑定是使用状态管理工具的前提。如果我们使用 vuex,那么数据流也是单向的,这时就会和双向数据绑定有冲突。

2、为啥要实现数据的双向绑定.

vue.js中,如果使用 vuex,实际上数据还是单向的,之所以说是数据双向绑定,这是用的UI控件来说,对于我们处理表单,Vue.js的双向数据绑定用起来就特别舒服。即两者并不互斥,在全局性数据流使用单向,方便追踪;局部性数据流使用双向,简单易操作

3、在表单中使用双向绑定.

可以使用v-model指令在表单 <input><textarea><select>元素上创建双向数据绑定。

它会根据控件类型自动选择正确的方法来更新元素。

它负责监听用户输入事件以更新数据,并对一些极端场景进行一些特殊处理。

v-model忽略所有表单元素valuecheckedselected特性的初始值而总是将Vue实例的数据作为数据来源我们应该通过JavaScript 在组件的data选项中声明初始值

v-model.

<body>
<div id="app">
    <input type="text" v-model="message"/>{{message}}
    <br>
    <select v-model="num">
        <option value="" disabled>---请选择---</option> <!--使用双向绑定后 下拉列表变为空 苹果第一项:如果是空就选不了了-->
        <option>first</option>
        <option>second</option>
        <option>third</option>
    </select>
    选择的是:{{num}}
    <br>
</div>
<script>
   var vm = new Vue({
       el:"#app",
       data:{
           message: "请输入文本,我会跟着文本变化!",
           num: ""
       },
    });
</script>
</body>
</html>

如果 v-model绑定的表单初始值未能匹配任何选项,<select>元素将被渲染为” 未选中 “ 状态。在IOS中,这会使用户无法选择第一个选项,因为在这种情况下,ios不会触发change事件。因此,更推荐像上面这样提供一个值为空的禁用选项。


文章作者: liuminkai
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 liuminkai !
评论
 上一篇
vue入门笔记-03-Vue基本语法 vue入门笔记-03-Vue基本语法
Vue基本语法. Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统 1、渲染v-bind. 除了文本插值,我们还可以像这样来绑定元素 attribute v-bind attribute 被称为指
2020-08-09
下一篇 
vue入门笔记-02-第一个Vue程序 vue入门笔记-02-第一个Vue程序
第一个Vue程序. IDEA必须安装Vue的插件 Vue不支持IE8及以下版本,因为Vue使用了IE8无法模拟的ECMAScript 5特性,但它支持素有兼容ECMAScript 5的浏览器 下载地址 在线CDN <script
2020-08-08
  目录