最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Webpack如何引入CDN鏈接來(lái)優(yōu)化編譯后的體積

 更新時(shí)間:2019年06月21日 09:46:56   作者:左撇峰子  
這篇文章主要介紹了詳解Webpack如何引入CDN鏈接來(lái)優(yōu)化編譯后的體積,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

背景

在 Vue 項(xiàng)目中,引入到工程中的所有 js 文件,編譯時(shí)都會(huì)被打包進(jìn) vendor.js,也就導(dǎo)致了 vendor.js 文件體積變得相當(dāng)臃腫,一定程度上影響著頁(yè)面的渲染。為了減少編譯后的體積,提高頁(yè)面渲染速度,我們可以通過(guò)引入 CDN 鏈接把庫(kù)分離,多線程異步 js 庫(kù),從而達(dá)到加速渲染的目的。那么我們?nèi)绾巫瞿兀?/p>

步驟

1.引入CDN鏈接

在項(xiàng)目的 index.html 中,常規(guī)方式引入 CDN 鏈接,此處以 vue 和 element-ui 為例:

<body>
 <div id="app"></div>
 <!-- CDN方式引入vue -->
 <script src="https://unpkg.com/vue/dist/vue.js"></script>
 <!-- CDN方式引入element-ui -->
 <script src="https://unpkg.com/element-ui@2.8.2/lib/index.js"></script>
</body>

2.添加externals屬性

Vue-cli 2

在項(xiàng)目的 build/webpack.base.conf.js 中,在下面合適位置添加 externals 相關(guān)語(yǔ)句,在 entry 后面加入即可:

module.exports = {
 context: path.resolve(__dirname, '../'),
 entry: {
 function: './src/main.js'
 },
 externals:{
 'vue': 'Vue',
 'element-ui': 'ElementUI'
 }
 ...
}

Vue-cli 3

在項(xiàng)目根目錄的 vue.config.js 中,將 configureWebpack 配置代碼塊添加進(jìn)入即可:

module.exports = {
 configureWebpack:{
 externals: {
  'vue': 'Vue',
  'element-ui': 'ElementUI'
 }
 }
}

注意:在上述代碼中,'vue': 'Vue' 對(duì)應(yīng)形式為 key : value,其中 key 為項(xiàng)目中引用的名稱,而 value 是資源本身定義的名稱(不可改),正常情況下我們可以參照 src/main.js 進(jìn)行查看:

import Vue from 'vue'
import ElementUI from 'element-ui'
//打開(kāi)src/main.js查閱以上兩行代碼,其前面作為value,后面作為key。

3.注釋import及Vue.use(xxx)

在項(xiàng)目的 src/main.js 中,注釋掉以下語(yǔ)句:

// import Vue from 'vue'
// import ElementUI from 'element-ui'
// import 'element-ui/lib/theme-chalk/index.css'
import App from './App'

Vue.config.productionTip = false

// Vue.use(ElementUI)

注:使用 eslint 規(guī)則的項(xiàng)目請(qǐng)不要注釋 import 及 Vue.use,除非你不使用那煩人的 eslint。

完成以上步驟后就可以開(kāi)始執(zhí)行 npm run build,你會(huì)發(fā)現(xiàn)編譯后的 vendor.js 從幾百K降到幾十K,也就意味著優(yōu)化體積已經(jīng)成效。 另外,有好多網(wǎng)友先前為了減少體積就已經(jīng)配置了 按需引入,如果引入 CDN 之后,記得把按需引入的配置去掉哦,因?yàn)橐?CDN 之后就不存在按需引入這種說(shuō)法啦!

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

卓资县| 孟津县| 桐庐县| 奇台县| 岳西县| 景德镇市| 甘泉县| 平乡县| 松桃| 渭南市| 唐海县| 临夏县| 宁明县| 东辽县| 中西区| 祁阳县| 柳河县| 康乐县| 乐陵市| 宣武区| 紫阳县| 九寨沟县| 城步| 牟定县| 贵定县| 泗水县| 聂拉木县| 平南县| 三河市| 肇庆市| 永清县| 上饶市| 礼泉县| 宜春市| 营山县| 平山县| 义乌市| 屏山县| 伊通| 溧水县| 湘乡市|