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如何循环提取对象数组中的值
Nov 18 Vue.js
ESLint 是如何检查 .vue 文件的
Nov 30 Vue.js
浅谈Vue使用Elementui修改默认的最快方法
Dec 05 Vue.js
Vue项目打包部署到apache服务器的方法步骤
Feb 01 Vue.js
vue浏览器返回监听的具体步骤
Feb 03 Vue.js
Vue包大小优化的实现(从1.72M到94K)
Feb 18 Vue.js
vue backtop组件的实现完整代码
Apr 07 Vue.js
vue引入Excel表格插件的方法
Apr 28 Vue.js
vue打包时去掉所有的console.log
Apr 10 Vue.js
vue项目proxyTable配置和部署服务器
Apr 14 Vue.js
vue postcss-px2rem 自适应布局
May 15 Vue.js
Vue2项目中对百度地图的封装使用详解
Jun 16 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
PHP文件注释标记及规范小结
2012/04/01 PHP
PHP fopen 读取带中文URL地址的一点见解
2012/09/25 PHP
帝国CMS留言板回复后发送EMAIL通知客户
2015/07/06 PHP
php语法检查的方法总结
2019/01/21 PHP
Laravel框架源码解析之反射的使用详解
2020/05/14 PHP
javascript 鼠标拖动图标技术
2010/02/07 Javascript
javascript截取字符串(通过substring实现并支持中英文混合)
2013/06/24 Javascript
浏览器缩放检测的js代码
2014/09/28 Javascript
jQuery实现的多屏图像图层切换效果实例
2015/05/07 Javascript
jquery仿京东侧边栏导航效果
2017/03/02 Javascript
javascript数据结构之串的概念与用法分析
2017/04/12 Javascript
python备份文件以及mysql数据库的脚本代码
2013/06/10 Python
python分析nignx访问日志脚本分享
2015/02/26 Python
Python打印斐波拉契数列实例
2015/07/07 Python
实例解析Python中的__new__特殊方法
2016/06/02 Python
详解Python中heapq模块的用法
2016/06/28 Python
Python基于sklearn库的分类算法简单应用示例
2018/07/09 Python
python使用matplotlib库生成随机漫步图
2018/08/27 Python
python中将正则过滤的内容输出写入到文件中的实例
2018/10/21 Python
详解如何用django实现redirect的几种方法总结
2018/11/22 Python
python全栈知识点总结
2019/07/01 Python
解决Django中修改js css文件但浏览器无法及时与之改变的问题
2019/08/31 Python
python下载库的步骤方法
2019/10/12 Python
Python递归函数特点及原理解析
2020/03/04 Python
Python Handler处理器和自定义Opener原理详解
2020/03/05 Python
Tensorflow tf.nn.depthwise_conv2d如何实现深度卷积的
2020/04/20 Python
Python爬虫之App爬虫视频下载的实现
2020/12/08 Python
意大利网上药房:Farmacia 33
2020/01/27 全球购物
介绍一下你对SOA的认识
2016/04/24 面试题
中学生个人自我评价
2014/02/06 职场文书
公司合作协议书范本
2014/04/18 职场文书
初婚未育证明样本
2014/10/24 职场文书
2014年少先队工作总结
2014/12/03 职场文书
幼儿园学前班幼儿评语
2014/12/29 职场文书
警告通知
2015/04/25 职场文书
Springboot如何使用logback实现多环境配置?
2021/06/16 Java/Android