1、五种Mixin混入
initMixin(Vue);
stateMixin(Vue);
eventsMixin(Vue);
lifecycleMixin(Vue);
renderMixin(Vue);
initMixin(Vue)
Vue.prototype._init = function() {}
stateMixin(Vue)
$data = vm._data;
$props = vm._props;
原型链上挂载$data,$props,$set,$delete,$watch
Object.defineProperty(Vue.prototype, "$data", dataDef);
Object.defineProperty(Vue.prototype, "$props", propsDef);
Vue.prototype.$set = set;
Vue.prototype.$delete = del;
Vue.prototype.$watch = function{}
eventsMixin(Vue)
原型链上挂载$on,$once,$off,$emit
Vue.prototype.$on = function{}
Vue.prototype.$once = function{}
Vue.prototype.$off = function{}
Vue.prototype.$emit = function{}
lifecycleMixin(Vue)
原型链上挂_update,$forceUpdate,$destroy
Vue.prototype._update= function{}
Vue.prototype.$forceUpdate = function{}
Vue.prototype.$destroy = function{}
renderMixin(Vue)
原型链上挂_render,$nextTick
Vue.prototype.$nextTick = function{}
Vue.prototype._render = function{}