您的位置:首页 > 产品设计 > UI/UE

[置顶] Vue的核心思想

2017-01-12 10:31 190 查看
1.数据驱动:
(1).DOM是数据的一种自然映射,手动改变DOM非常麻烦使用vue.js之后,只需要改变数据,通过改变Directives指令,当数据发生变化,会通过数据指令去修改对应的DOM

(2).Vue.js还会对事件进行一定的监听,当我们改变视图(view)的时候通过DOM Listeners来改变数据

通过以上两点就实现了数据的双向绑定

数据响应原理



在一份数据a.b在一个vue实例化的过程中会给ES5中的obj.Dependcies的属性添加一个getter 和 setter,同时vue.js会对模板进行编译,生成一个指令对象(右边那个黄色的就是一个v-text=“a.b”的指令),每一个指令对象都会关联一个Watcher(中间那个蓝色的),对指令对应的表达式做对应的求值的时候就会触发了getter,就会吧依赖升级到Watcher,当我们再次改变了a.b(在黄色那里改变)的值的时候就会触发到setter,会通知到对应的Watcher,然后Watcher再次对a.b求值,计算对比新旧值,当发现值改变Watch就会通知到指令,调用指令Update的方法,由于指令是对DOM的封装所以,就会调用原生DOM的方法去更新视图

2.组件化

组件化目的是扩展HTML元素,封装可重用的代码



右边是我们的可视化页面

在vue中每一个组件对应一个view的Model,最终生成右边那个树

组件的设计原则
页面上每一个独立的可视/可交互区域视为一个组件

每个组件对应一个工程目录,组件所需要的各种资源在这个目录下就近维护

展示面不过是组件的容器,组件可以嵌套自由组合形成完整的页面
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: