Vue.js单向绑定和双向绑定实例分析


Posted in Javascript onAugust 14, 2018

本文实例讲述了Vue.js单向绑定和双向绑定。分享给大家供大家参考,具体如下:

1、单向绑定

单向数据绑定的实现思路:

① 所有数据只有一份

② 一旦数据变化,就去更新页面(只有data-->DOM,没有DOM-->data)

③ 若用户在页面上做了更新,就手动收集(双向绑定是自动收集),合并到原有的数据中。

<!DOCTYPE html>
<html>
<head></head>
<body>
   <div id="app">
    {{message}}
   </div>
   <script>
    var app = new Vue({
       el: '#app',
       data: {
        message: ''
       }
    });
   </script>
</body>
</html>

2、双向绑定

数据的双向绑定是vue实现的一大功能。

使用v-model指令,实现视图和数据的双向绑定。

所谓双向绑定,指的是vue实例中的data与其渲染的DOM元素的内容保持一致,无论谁被改变,另一方会相应的更新为相同的数据。这是通过设置属性访问器实现的。

v-model主要用在表单的input输入框,完成视图和数据的双向绑定。

v-model只能用在<input><select><textarea>这些表单元素上。

双向绑定的缺点:不知道data什么时候变了,也不知道是谁变了,变化后也不会通知,当然可以watch来监听data的变化,但这复杂,还不如单向绑定。

<!DOCTYPE html>
<html>
<head></head>
<body>
   <div id="app">
    <input type="text" v-model="message">
    <p>{{message}}</p>
   </div>
   <script>
    var app = new Vue({
       el: '#app',
       data: {
        message: ''
       }
    });
   </script>
</body>
</html>

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

Javascript 相关文章推荐
强制设为首页代码
Jun 19 Javascript
List the UTC Time on a Computer
Jun 11 Javascript
8个超棒的学习 jQuery 的网站 推荐收藏
Apr 02 Javascript
$.each遍历对象、数组的属性值并进行处理
Jul 18 Javascript
js获取元素相对窗口位置的实现代码
Sep 28 Javascript
Js控制滑轮左右滑动实例
Feb 13 Javascript
JS实现alert中显示换行的方法
Dec 17 Javascript
浅析JSONP技术原理及实现
Jun 08 Javascript
深入浅析Vue组件开发
Nov 25 Javascript
详解vue.js2.0父组件点击触发子组件方法
May 10 Javascript
jQuery选择器之属性筛选选择器用法详解
Sep 19 jQuery
详解各版本React路由的跳转的方法
May 10 Javascript
微信小程序异步API为Promise简化异步编程的操作方法
Aug 14 #Javascript
jQuery实现的简单拖拽功能示例【测试可用】
Aug 14 #jQuery
jQuery+CSS实现的标签页效果示例【测试可用】
Aug 14 #jQuery
layui的table单击行勾选checkbox功能方法
Aug 14 #Javascript
解决layui 复选框等内置控件不显示的问题
Aug 14 #Javascript
深入浅析Node环境和浏览器的区别
Aug 14 #Javascript
解决JavaScript layui 下拉框不显示的问题
Aug 14 #Javascript
You might like
php数据结构 算法(PHP描述) 简单选择排序 simple selection sort
2011/08/09 PHP
php使用str_replace实现输入框回车替换br的方法
2014/11/24 PHP
PHP获取一段文本显示点阵宽度和高度的方法
2015/03/12 PHP
Yii2 rbac权限控制之菜单menu实例教程
2016/04/28 PHP
php脚本守护进程原理与实现方法详解
2017/07/20 PHP
BOOM vs RR BO5 第一场 2.14
2021/03/10 DOTA
jQuery实现可收缩展开的级联菜单实例代码
2013/11/27 Javascript
父节点获取子节点的字符串示例代码
2014/02/26 Javascript
JS下载文件|无刷新下载文件示例代码
2014/04/17 Javascript
js获取元素外链样式的方法
2015/01/27 Javascript
易操作的jQuery表单提示插件
2015/12/01 Javascript
js+html5实现的自由落体运动效果代码
2016/01/28 Javascript
jquery仿QQ登录账号选择下拉框效果
2016/03/22 Javascript
JavaScript实现横线提示输入验证码随输入验证码输入消失的方法
2016/09/24 Javascript
JS制作适用于手机和电脑的通知信息效果
2016/10/28 Javascript
详解Python中logging日志模块在多进程环境下的使用
2016/12/26 Javascript
JS 在数组指定位置插入/删除数据的方法
2017/01/12 Javascript
简单实现js选项卡切换效果
2017/02/09 Javascript
AngularJS路由Ui-router模块用法示例
2017/05/29 Javascript
vue 实现数字滚动增加效果的实例代码
2018/07/06 Javascript
Vue实现远程获取路由与页面刷新导致404错误的解决
2019/01/31 Javascript
js+cavans实现图片滑块验证
2020/09/29 Javascript
如何在Express4.x中愉快地使用async的方法
2020/11/18 Javascript
[41:52]DOTA2-DPC中国联赛 正赛 CDEC vs Dynasty BO3 第二场 2月22日
2021/03/11 DOTA
Python中利用sqrt()方法进行平方根计算的教程
2015/05/15 Python
Google开源的Python格式化工具YAPF的安装和使用教程
2016/05/31 Python
读写json中文ASCII乱码问题的解决方法
2016/11/05 Python
11月编程语言排行榜 Python逆袭C#上升到第4
2017/11/15 Python
TensorFlow神经网络优化策略学习
2018/03/09 Python
详解Matplotlib绘图之属性设置
2019/08/23 Python
Python 实现使用空值进行赋值 None
2020/03/12 Python
Django实现列表页商品数据返回教程
2020/04/03 Python
利用python 下载bilibili视频
2020/11/13 Python
CNC数控操作工岗位职责
2013/11/19 职场文书
2014春晚主持词
2014/03/25 职场文书
教你使用pyinstaller打包Python教程
2021/05/27 Python