美文网首页
01_双向数据绑定原理

01_双向数据绑定原理

作者: CHENPEIHUANG | 来源:发表于2018-02-05 19:16 被阅读0次

双向数据绑定原理:
1)Vue实例上的所有data属性都会被Vue实例代理,而且是严格相等
2)这些data属性在Vue内部会通过Object.defineProperty的getter/setter进行依赖追踪
3)当用户修改了对应的属性值时,内部就会自动的触发setter方法
4)在setter方法中将数据的更新告知通知者,通知者就会将数据更新广播给每一个数据的watcher
5)watcher收到通知后判断对应数据是否发生,如果发生变化就会触发虚拟DOM进行更新,虚拟DOM更新后又会自动更新真实DOM

<!DOCTYPE html>
<html lang="zh">
<head>
    <title>Document</title>
</head>
<body>
    <div id="app">
        <!--用插值渲染,刷新网页会闪插值-->
        <p>{{msg}}</p>
        
        
        
        <!--用指令渲染-->
        <p v-text="msg"></p>
        
        
        
        <!--用v-model双向数据绑定-->
        <input type="text" v-model="msg" /><br /><br />
        
        
        
        <!--用v-on调用方法-->
        <!--v-on指令用于将表达式绑定到指定的事件上
            必要参数,指定的绑定事件类型,如click,mouseup,keyup...
            指令格式:
                指令名称:指令参数.指令修饰符1.指令修饰符2
        -->
        <button v-on:click="show()">Vue按钮</button><br /><br />
        
        
        <!--在Vue中元素的属性设置变量时,不能通过插值{{}}设置
            而是使用v-bind:属性名设置,属性值为变量
                v-bind:type/value/class/id="xxx"
        -->
        <!--用v-bind修改type类型-->
        <input type="text" value="clickMe!" v-bind:type="changeType"/><br /><br />
        
        <!--用v-bind修改value类型-->
        <input type="text" value="hello" v-bind:value="changeValue"/>
        
        
    </div>
    <script src="js/vue.js"></script>
    <script>
        var vm = new Vue({
            el:"#app",
            data:{
                msg:"hello",
                changeType:"button",
                changeValue:"importMe!"
            },
            //方法须定义在methods属性上
            methods:{
                show:function(){
                    alert("用v-on指令调用方法 成功!")
                }
            }
        })
    </script>
</body>
</html>

相关文章

  • 01_双向数据绑定原理

    双向数据绑定原理:1)Vue实例上的所有data属性都会被Vue实例代理,而且是严格相等2)这些data属性在Vu...

  • 深入Vue响应式原理

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

  • vue 双向数据绑定

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

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

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

  • 前端理论面试--VUE

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

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

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

  • vue面试知识点

    vue 数据双向绑定原理 vue实现数据双向绑定原理主要是:采用数据劫持结合发布订阅设计模式的方式,通过对data...

  • vue 面试汇总(更新中...)

    1.说说对双向绑定的理解 1.1、双向绑定的原理是什么 我们都知道Vue是数据双向绑定的框架,双向绑定由三个重要部...

  • Vue双向数据绑定原理

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

  • 关于双向绑定的问题

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

网友评论

      本文标题:01_双向数据绑定原理

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