美文网首页
双向绑定实现原理

双向绑定实现原理

作者: key君 | 来源:发表于2019-10-16 10:53 被阅读0次

Vue._init->Vue.mount->Vue.mount扩展->mountCompoent->Watcher->get->updateCompoent->Vue._update->patch->createElm->createChildren->invokeCreateHooks->updateDOMProps
updateDOMProps:给input.value赋值

src/platforms/web/runtime/modules/event.js
updateDOMListeners 里面做的就是addEventListener

v-model实际上是个语法糖 为了简化代码
input的v-model
组件第一次patch的时候 给value赋值变量
加上input监听 当输入有更新的时候 会重新给value绑定的变量赋值 双向绑定就实现了
打印的是Vue.options.render


image.png

自定义组件的v-model
自定义组件会把value和监听包裹在model里
src/core/vdom/create-component.js
transformModel() 把data.model做了转换 这个方法做了on.input = callback
src/core/vdom/patch.js
createComponent->initComponent()->invokeCreateHooks()属性更新


image.png

相关文章

  • 深入Vue响应式原理

    1.Vue的双向数据绑定 参考 vue的双向绑定原理及实现Vue双向绑定的实现原理Object.definepro...

  • 【转】JavaScript的观察者模式(Vue双向绑定原理)

    关于Vue实现数据双向绑定的原理,请点击:Vue实现数据双向绑定的原理原文链接:JavaScript设计模式之观察...

  • 前端理论面试--VUE

    vue双向绑定的原理(详细链接) VUE实现双向数据绑定的原理就是利用了 Object.definePropert...

  • Vue实现数据双向绑定的原理

    Vue实现数据双向绑定的原理:Object.defineProperty() vue实现数据双向绑定主要是:采用数...

  • vue 双向数据绑定

    Vue实现数据双向绑定的原理:Object.defineProperty()vue实现数据双向绑定主要是:采用数据...

  • vue双向数据绑定

    剖析Vue原理、实现双向绑定MVVM 几种实现双向绑定的做法 目前几种主流的mvc(vm)框架都实现了单向数据绑定...

  • Vue双向数据绑定原理

    剖析Vue实现原理 - 如何实现双向绑定mvvm 本文能帮你做什么?1、了解vue的双向数据绑定原理以及核心代码模...

  • 关于双向绑定的问题

    剖析Vue实现原理 - 如何实现双向绑定mvvm 本文能帮你做什么?1、了解vue的双向数据绑定原理以及核心代码模...

  • vue双向绑定原理

    Vue.js双向绑定的实现原理

  • 剖析Vue原理&实现双向绑定MVVM

    1、了解vue的双向数据绑定原理以及核心代码模块 2、缓解好奇心的同时了解如何实现双向绑定 几种实现双向绑定的做法...

网友评论

      本文标题:双向绑定实现原理

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