Cloud Vue源碼分為核心和插件兩部分。
核心部分主要是Vue.js的核心代碼,包括Vue實例的創(chuàng)建、響應(yīng)性原理、組件化等基礎(chǔ)代碼。這部分代碼主要集中在src/core目錄下。
/* Vue.js的主要代碼 */
/* src/core/index.js */
import Vue from './instance/index'
import { initGlobalAPI } from './global-api/index'
import { isServerRendering } from 'core/util/env'
initGlobalAPI(Vue)
Object.defineProperty(Vue.prototype, '$isServer', {
get: isServerRendering
})
Vue.version = '__VERSION__'
export default Vue
插件部分主要是一些Vue.js提供的插件,例如Vuex、Vue Router、Vue-i18n等。這些插件的代碼位于src目錄下的各個子目錄內(nèi),每個插件都是一個獨立的功能模塊。
/* Vuex的主要代碼 */
/* src/vuex/index.js */
import { Store, install } from './store'
export default {
Store,
install
}
總體來說,Cloud Vue的源碼結(jié)構(gòu)非常清晰,代碼風格也非常規(guī)范,可以作為Vue.js開發(fā)者學(xué)習Vue.js源碼的好資源。