Vueソース学習の3:全体的なフレームワーク
1543 ワード
この1篇は実はとても水で、実質的な内容は何もなくて、ただVueのソースコードの内部のものをすべて暇にして、1つの空いた棚を出します.
私が見たVueコードは2.0.3に基づいており、現在の最高バージョンではdistから直接抽出された生成済みの完全なコードは、srcディレクトリの下のコードを使わなかったのは、es 2015が熟練していないためであり、flowなどは接触したことがないからだ.
では、次は直接コードを入れましょう.説明するのはすべて注釈の中にあります.
私が見たVueコードは2.0.3に基づいており、現在の最高バージョンではdistから直接抽出された生成済みの完全なコードは、srcディレクトリの下のコードを使わなかったのは、es 2015が熟練していないためであり、flowなどは接触したことがないからだ.
では、次は直接コードを入れましょう.説明するのはすべて注釈の中にあります.
// ,commonjs、amd
// , ?
(function(global, factory) {
typeof exports === 'object' && typeof module !== 'undefined'
? module.exports = factory()
: typeof define === 'function' && define.amd
? define(factory)
: (global.Vue = factory());
}(this, (function() {
'use strict';
function stateMixin(Vue) {}
function lifecycleMixin(Vue) {}
function renderMixin(Vue) {}
function eventsMixin(Vue) {}
var uid = 0;
function initMixin(Vue) {
Vue.prototype._init = function(options) {
var vm = this;
vm._uid = uid++;
vm._isVue = true;
};
}
function Vue$3(options) {
// new ,
// underscore , , new , new
if(!(this instanceof Vue$3)) {
return new Vue$3(options);
}
this._init(options);
}
// Vue$3 、
// ,js
//
initMixin(Vue$3);
//
stateMixin(Vue$3);
//
eventsMixin(Vue$3);
//
lifecycleMixin(Vue$3);
//
renderMixin(Vue$3);
return Vue$3;
})));