美文网首页
响应式和双向数据绑定理解

响应式和双向数据绑定理解

作者: 王果果 | 来源:发表于2021-07-31 15:17 被阅读0次

响应式

  • 数据变化之后然后执行一定的副作用(页面渲染 发送ajax请求 任何的业务逻辑)

双向绑定

  • 数据 和 视图互相影响的一个关系
    M -> V
    V -> M
<!-- 响应式 -->
<div id="app">
  <input type="text" />
</div>

<script>
  // Object.defineProperty  拦截对于对象属性的访问
  let data = {}
  let _name = ''
  Object.defineProperty(data, "name", {
    // 访问data中name属性就会立刻执行
    get() {
      console.log("name属性被访问了")
      // 如果我们定义了get函数  那么访问data.name 拿到的永远是get函数的返回值
      return _name
    },
    // 设置重新赋值时候会立刻执行
    set(newValue) {
      console.log("name属性被设置了")
      // 只要数据被更新就会执行此方法 更新视图 发送ajax
      // 只要name属性的值发生变化 就把name属性的值更新到视图中   dom
      // document.getElementById('app').innerText = newValue
      // 只要name变化 input框中就显示当前的name的值
      document.querySelector("#app input").value = newValue
    }
  })
  // 视图变化之后影响数据
  // 如何得知视图变化了? 监听事件
  // 反向修改? 在回调函数中拿到当前输入框中最新的值 然后反向赋值给name属性
  document.querySelector("#app input").addEventListener("input", (e) => {
    // e.target.value
    _name = e.target.value
  })

</script>

相关文章

  • 响应式和双向数据绑定理解

    响应式 数据变化之后然后执行一定的副作用(页面渲染 发送ajax请求 任何的业务逻辑) 双向绑定 数据 和 视...

  • (二)Vue-模拟实现响应式

    数据驱动 数据响应式、双向绑定、数据驱动 数据响应式数据模型仅仅是普通的 JavaScript 对象,而当我们修改...

  • vue的优势

    vue是单页面应用,页面局部刷新 ,响应的数据绑定/响应式编程,组件化,轻量级框架,简单易学,双向数据绑定,视图数...

  • Vue 响应式 / 双向数据绑定

    一、关于双向数据绑定 数据模型和视图之间的双向绑定 Vue 中的 MVVM 通常,我们需要编写代码,将从服务器获取...

  • React 面试题整理

    一、react 和 vue 的区别是什么? 1、vue是响应式的数据双向绑定系统,而react是单向数据流,没有双...

  • Vue的特点

    vue两大特点:响应式编程、组件化。 vue的优势:轻量级框架、简单易学、双向数据绑定、组件化、数据和结构的分离、...

  • 原来vue的原理是这样的

    vue.js中有两个核心功能:响应式数据绑定,组件系统。主流的mvc框架都实现了单向数据绑定,而双向绑定无非是在单...

  • vue 双向绑定原理实现

    实现 mvvm 主要包含两个方面,数据变化更新视图,视图变化更新数据 Vue 数据双向绑定(即数据响应式),是利用...

  • Vue2 双向绑定——defineProperty

    前言 Vue三要素:响应式、模版引擎和渲染。其中,响应式就是通过著名的双向绑定(Two-way data bind...

  • 简单实现Vue响应式原理@郝晨光

    前言 Vue的数据双向绑定,响应式原理,其实就是通过Object.defineProperty()结合发布者订阅者...

网友评论

      本文标题:响应式和双向数据绑定理解

      本文链接:https://www.haomeiwen.com/subject/owxkvltx.html