vue实现简单数据双向绑定


Posted in Vue.js onApril 28, 2021

本文实例为大家分享了vue实现简单数据双向绑定的具体代码,供大家参考,具体内容如下

这里是简单的实现,有助于新手理解消化,当然vue要实现双向数据代理不可缺少,期待后续在更新

vue双向数据绑定

-> Object.defineProperty() //2.0核心语法
-> 数据代理
-> 双向绑定
-> 订阅发布模式
compile-> 模版解析 (template模版 html 指令 {{表达式}})
observer-> 观察者(订阅发布) data里的所有的属性进行 数据劫持 数据代理
watcher-> 监听 data里的所有的属性被改变之后触发

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <input type="text" id="ipt" />
    <p id="lc"></p>
  </body>
</html>
<script>
  //获取页面元素
  var ipt = document.getElementById("ipt");
  var ps = document.getElementById("lc");

  var obj = { name: "" };

  //vue双向数据绑定的核心原理应用
  Object.defineProperty(obj, "name", {
    get() {
      return ipt.value;
    },
    set(newval) {
      ipt.value = newval;
      ps.innerHTML = newval;
    },
  });

  //监听input中的数据变化并赋值p标签
  ipt.addEventListener("keyup", function() {
    ps.innerHTML = ipt.value;
  });
</script>

效果展示:

vue实现简单数据双向绑定

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Vue.js 相关文章推荐
vue使用vant中的checkbox实现全选功能
Nov 17 Vue.js
vue+vant实现购物车全选和反选功能
Nov 17 Vue.js
vue 表单输入框不支持focus及blur事件的解决方案
Nov 17 Vue.js
一篇超完整的Vue新手入门指导教程
Nov 18 Vue.js
vue 插槽简介及使用示例
Nov 19 Vue.js
Vue如何实现验证码输入交互
Dec 07 Vue.js
Vue多选列表组件深入详解
Mar 02 Vue.js
Vue-router编程式导航的两种实现代码
Mar 04 Vue.js
vue3中的组件间通信
Mar 31 Vue.js
Vue3.0 手写放大镜效果
Jul 25 Vue.js
vue实现滑动解锁功能
Mar 03 Vue.js
VUE解决跨域问题Access to XMLHttpRequest at
May 06 Vue.js
vue引入Excel表格插件的方法
Apr 28 #Vue.js
原生JS封装vue Tab切换效果
vue项目两种方式实现竖向表格的思路分析
vue首次渲染全过程
浅谈vue2的$refs在vue3组合式API中的替代方法
Vue.js 带下拉选项的输入框(Textbox with Dropdown)组件
vue backtop组件的实现完整代码
You might like
基于mysql的bbs设计(二)
2006/10/09 PHP
php不用正则采集速度探究总结
2008/03/24 PHP
php Static关键字实用方法
2010/06/04 PHP
php分页思路以及在ZF中的使用
2012/05/30 PHP
javascript 动态参数判空操作
2008/12/22 Javascript
jQuery html() in Firefox (uses .innerHTML) ignores DOM changes
2010/03/05 Javascript
基于jquery的blockui插件显示弹出层
2011/04/14 Javascript
输入密码检测大写是否锁定js实现代码
2012/12/03 Javascript
jquery设置元素的readonly和disabled的写法
2013/09/22 Javascript
JavaScript插件化开发教程(五)
2015/02/01 Javascript
基于JS实现简单的样式切换效果代码
2015/09/04 Javascript
JavaScript调用传递变量参数的相关问题及解决办法
2015/11/01 Javascript
Sublime Text 3常用插件及安装方法
2015/12/16 Javascript
微信QQ的二维码登录原理js代码解析
2016/06/23 Javascript
浅谈jQuery before和insertBefore的区别
2016/12/04 Javascript
js实现适合新闻类图片的轮播效果
2017/02/05 Javascript
javascript九宫格图片随机打乱位置的实现方法
2017/03/15 Javascript
Omi v1.0.2发布正式支持传递javascript表达式
2017/03/21 Javascript
vue引入swiper插件的使用实例
2017/07/19 Javascript
Vue单页应用引用单独的样式文件的两种方式
2018/03/30 Javascript
vue中typescript装饰器的使用方法超实用教程
2019/06/17 Javascript
javascript中的offsetWidth、clientWidth、innerWidth及相关属性方法
2020/05/14 Javascript
javascript实现一款好看的秒表计时器
2020/09/05 Javascript
Python时间的精准正则匹配方法分析
2017/08/17 Python
基于canvas使用贝塞尔曲线平滑拟合折线段的方法
2018/01/10 HTML / CSS
历史学专业推荐信
2013/11/06 职场文书
医生个人自我剖析材料
2014/10/08 职场文书
违反学校规则制度检讨书
2015/01/01 职场文书
超市督导岗位职责
2015/04/10 职场文书
试用期旷工辞退通知书
2015/04/17 职场文书
2015年爱国卫生工作总结
2015/04/22 职场文书
第一节英语课开场白
2015/06/01 职场文书
PHP 对接美团大众点评团购券(门票)的开发步骤
2021/04/03 PHP
React中的Context应用场景分析
2021/06/11 Javascript
基于JavaScript实现年月日三级联动
2021/06/22 Javascript
Redis 操作多个数据库的配置的方法实现
2022/03/23 Redis