vue的src目錄總覽:
vue源碼的src目錄下一共有6個(gè)文件夾:
-compiler #編譯相關(guān)
-core #核心代碼
-platforms #不同平臺(tái)的支持
-server #服務(wù)端渲染
-sfc # vue文件解析
-shared #共享代碼
compiler
compiler目錄是與編譯相關(guān)的東西都在這里。比如說(shuō)vue的virtualDom生成時(shí)會(huì)執(zhí)行render()函數(shù),我們平時(shí)其實(shí)很少手寫(xiě)render(),一般都是寫(xiě)<template></template>甩栈。而template編譯成render()函數(shù)的相關(guān)邏輯都在compiler文件夾里面撒轮。
core
core目錄下又分為好幾個(gè)子目錄市框,如下圖所示:
-components:主要放內(nèi)置組件鼓黔,例如keep-alive
-global-api:這個(gè)文件夾下面主要放一些全局的api茉继,像extend盖彭、mixin等
-instance:包含渲染的輔助函數(shù)纹烹,像事件页滚、生命周期、初始化等等铺呵。
-observer:放置跟響應(yīng)式數(shù)據(jù)相關(guān)的代碼
-util:里面是一些方法工具
-vdom:virtualDom相關(guān)的代碼
platforms
包含兩個(gè)子目錄:web和weex
這是一個(gè)與平臺(tái)相關(guān)的目錄裹驰。在不同的平臺(tái)入口,會(huì)編譯出不同的vue.js片挂。比如說(shuō)從web目錄進(jìn)去幻林,就會(huì)編譯出web平臺(tái)所對(duì)應(yīng)的代碼。
server
這個(gè)目錄下是所有跟服務(wù)端渲染相關(guān)的代碼
sfc
sfc文件夾是一個(gè)解釋器音念,它能將一個(gè).vue文件編譯成一個(gè)javascript對(duì)象沪饺。
shared
shared中會(huì)定義一些工具方法,一些能被其他文件所調(diào)用的共有的輔助方法闷愤。