概述:
- 理论开发中,vue 框架在浏览器中就是一个实例化的 Vm 对象,在 main.js 中配置这个 Vue 这个对象,框架会主动的实例化。
- 罕用的性能是有 V-for;V-if,生命周期,数据监听,事件绑定,页面挂载 ;咱们将在前面缓缓的实现这些性能。
根本目录构造
- core 文件是整个框架的外围
- instance 文件性能是实例化对象
- 图示
文件的基本功能
-
core/index.js 入口文件
import Due from "./instance/index.js" export default Due;
-
instance/index.js 文件夹入口
import {initMixin} from "./init.js" function Due(options) {this._init(options); } // 在原型链上增加办法 initMixin(Due); export default Due;
-
init.js 文件
/** * 给 Due 对象的原型链增加办法 */ import {constructProxy} from "./proxy.js" let uid = 0 export function initMixin (Due) {Due.prototype._init = function (options) { const vm = this; vm.uid = uid++; vm._isDue = true; vm.data = null // 初始化数据 if(options && options.data) {vm.data = constructProxy(vm, options.data, "") } // 初始化 created 办法 // 初始化 methods // 初始化 computed // 初始化 el 并挂载 } }