vue有两大核心:1、数据驱动,也就是数据的双向绑定,让视图(DOM)的内容随着数据的改变而改变;2、组件化系统,可实现扩展HTML元素,封装可用的代码。
本教程操作环境:windows7系统、vue2.9.6版,DELL G3电脑。
数据驱动
组件化系统
Vue 响应式核心就是,getter 的时候会收集依赖,setter 的时候会触发依赖更新
vue将遍历data中对象的所有property,并使用 Object.defineProperty 把这些 property 全部转为
getter/setter。
这些 getter/setter 对用户来说是不可见的,但是在内部它们让 Vue 能够追踪依赖,在 property
被访问和修改时通知变更。
每个组件实例都对应一个 watcher 实例,它会在组件渲染的过程中把“接触”过的数据 property 记录为依赖。
getter的时候我们会收集依赖,依赖收集就是订阅数据变化watcher的收集,依赖收集的目的是当响应式数据发生变化时,能够通知相应的订阅者去处理相关的逻辑。
setter 的时候会触发依赖更新,之后当依赖项的 setter 触发时,会通知 watcher,从而使它关联的组件重新渲染。
组件化
扩展HTML元素,封装可重用的代码。每一个组件都对应一个ViewModel。页面上每个独立的可视/可交互区域都可以视为一个组件。每个组件对应一个工程目录,组件所需要的各种资源在这个目录下就进维护。页面是组件的容器,组件可以嵌套自由组合形成完整的页面。
组件的核心选项:
模板(template):模板声明了数据和最终展现给用户的DOM之间的映射关系。
初始数据(data):一个组件的初始数据状态。对于可复用的组件来说,这通常是私有的状态。
接受的外部参数(props):组件之间通过参数来进行数据的传递和共享。
方法(methods):对数据的改动操作一般都在组件的方法内进行。
生命周期钩子函数(lifecycle hooks):一个组件会触发多个生命周期钩子函数,最新2.0版本对于生命周期函数名称改动很大。
私有资源(assets):Vue.js当中将用户自定义的指令、过滤器、组件等统称为资源。一个组件可以声明自己的私有资源。私有资源只有该组件和它的子组件可以调用。
【相关推荐:vue.js教程】
以上是vue的核心是什么的详细内容。更多信息请关注PHP中文网其他相关文章!