做搬家服務(wù)網(wǎng)站問(wèn)卷調(diào)查的目的搜索引擎優(yōu)化指南
-
完整版:同時(shí)包含編譯器和運(yùn)行時(shí)的版本。
-
編譯器:用來(lái)將模板字符串編譯成為 JavaScript 渲染函數(shù)的代碼。
-
運(yùn)行時(shí)runtime:用來(lái)創(chuàng)建 Vue 實(shí)例、渲染并處理虛擬 DOM 等的代碼?;旧暇褪浅ゾ幾g器的其它一切。
-
UMD:UMD 版本可以通過(guò) script 標(biāo)簽直接用在瀏覽器中。
-
CommonJS(common、cjs):CommonJS 版本用來(lái)配合老的打包工具比如 Browserify 或 webpack 1。這些打包工具的默認(rèn)文件(pkg.main) 是只包含運(yùn)行時(shí)的 CommonJS 版本 (vue.runtime.common.js)。
-
ES Module(esm):從 2.6 開(kāi)始 Vue 會(huì)提供兩個(gè) ES Modules (ESM) 構(gòu)建文件:
1.為打包工具提供的 ESM:為諸如 webpack 2 或 Rollup 提供的現(xiàn)代打包工具。ESM 格式被設(shè)計(jì)為可以被靜態(tài)分析,所以打包工具可以利用這一點(diǎn)來(lái)進(jìn)行“tree-shaking”并將用不到的代碼排除出最終的包。為這些打包工具提供的默認(rèn)文件 (pkg.module) 是只有運(yùn)行時(shí)的 ES Module 構(gòu)建 (vue.runtime.esm.js)。
2.為瀏覽器提供的 ESM (2.6+):用于在現(xiàn)代瀏覽器中通過(guò)<script type="module">
直接導(dǎo)入。 -
bundler(這個(gè)版本沒(méi)有打包所有的代碼,只會(huì)打包使用的代碼,需要配合打包工具來(lái)使用,會(huì)讓Vue體積更小)
-
browser(版本都包含esm,瀏覽器的原生模塊化方式,可以直接通過(guò)
<script type="module" />
的方式來(lái)導(dǎo)入模塊) -
prod和min都是生產(chǎn)版本,對(duì)代碼進(jìn)行了壓縮
-
vue.esm.browser.js: 是 Vue.js 的一個(gè)構(gòu)建版本,針對(duì)瀏覽器環(huán)境而設(shè)計(jì)。這個(gè)構(gòu)建版本采用了 ES Module (ESM) 的格式,使得你可以在支持 ES Module 的環(huán)境中直接使用 import 語(yǔ)句來(lái)導(dǎo)入Vue.js,例如在現(xiàn)代的前端開(kāi)發(fā)工具鏈中,比如 webpack、Rollup 等。
-
vue.common.js 是 Vue.js 的一個(gè)構(gòu)建版本,它主要用于在 CommonJS 環(huán)境中使用,可以在 Node.js環(huán)境中使用 Vue.js 來(lái)構(gòu)建服務(wù)端渲染的應(yīng)用程序,或者在使用一些構(gòu)建工具如 Browserify 的情況下,在瀏覽器中使用CommonJS 模塊加載 Vue.js。
通過(guò) template 選項(xiàng)提供的模板將會(huì)在運(yùn)行時(shí)即時(shí)編譯。這僅在使用了包含模板編譯器的 Vue 構(gòu)建版本的情況下支持。文件名中帶有 runtime 的 Vue 構(gòu)建版本未包含模板編譯器。
vue.global.js:是包含編譯器和運(yùn)行時(shí)的“完整”構(gòu)建版本,因此它支持動(dòng)態(tài)編譯模板。
vue.runtime.global.js:只包含運(yùn)行時(shí),并且需要在構(gòu)建步驟期間預(yù)編譯模板。
其中,如果需要在客戶端上編譯模板 (即:將字符串傳遞給template 選項(xiàng),或者使用元素的DOM內(nèi)HTML 作為模板掛載到元素),將需要編譯器,因此需要完整的構(gòu)建版本
當(dāng)使用Webpack的vue-loader時(shí),*.vue 文件中的模板會(huì)在構(gòu)建時(shí)預(yù)編譯為JavaScript,在最終的捆綁包中并不需要編譯器,因此可以只使用運(yùn)行時(shí)構(gòu)建版本。所以,如果直接在瀏覽器打開(kāi)Vue的頁(yè)面,可以直接采用script引入完整版本,如果采用構(gòu)建工具例如Webpack進(jìn)行構(gòu)建,則可以使用import引入運(yùn)行時(shí)版本