const port = 8080; // 端口號
const IS_PRODUCTION = process.env.NODE_ENV == "production"; // 正式環(huán)境
const CompressionPlugin = require("compression-webpack-plugin");
const UglifyJsWebpackPlugin = require("uglifyjs-webpack-plugin");
/** key 是import 的包名,value 是CDN 為我們提供的全局變量名 */
const externals = {
"ali-oss": "OSS"
};
module.exports = {
// 放在服務(wù)器根目錄下面的
publicPath: "/<服務(wù)器上項目所在的文件夾名>/",
assetsDir: "static", // 輸出的資源扫责,所在的文件夾
/** 去掉hash */
filenameHashing: false,
chainWebpack: config => {
/** 如果是正式環(huán)境 */
if (IS_PRODUCTION) {
// 解決ie11兼容ES6
config.entry("main").add("babel-polyfill");
/** 刪除懶加載模塊的 prefetch preload动壤,降低帶寬壓力(使用在移動端) */
config.plugins.delete("prefetch").delete("preload");
/** 阿里云SDK --不打包 */
config.externals(externals);
/** gzip 壓縮 */
config
.plugin("compressionPlugin")
.use(CompressionPlugin)
.tap(() => [
{
test: /\.js$|\.html$|\.css/, //匹配文件名
threshold: 10240, //超過10k進行壓縮
deleteOriginalAssets: false //是否刪除源文件
}
]);
/** 去掉console.log debugger sourceMap*/
config.optimization.minimizer([
new UglifyJsWebpackPlugin({
/**這個 sourceMap注釋掉,默認就是置為false.(寫為false 也是可以的)夏醉。
* 反之設(shè)為true 是生效的。
* 故在官方的配置(productionSourceMap: false)就可以注釋掉了*/
sourceMap: false,
uglifyOptions: {
warnings: false,
compress: {
drop_console: true,
drop_debugger: true
}
}
})
]);
}
/** 有此插件就不用了去涌韩,圖片壓縮網(wǎng)站壓縮圖片了 */
/** png畔柔、jpg圖片壓縮有效--已測試 jpg圖片壓縮圖片質(zhì)量變差*/
config.module
.rule("images")
.use("image-webpack-loader")
.loader("image-webpack-loader")
.options({
bypassOnDebug: true
})
.end();
/** 文件名稱hash 三種規(guī)則 */
/**hash chunkhash contenthash */
// config.output.filename("[name].[contenthash].js").end();
},
devServer: {
port: port, // 端口號
host: "0.0.0.0",
https: false, // https:{type:Boolean}
open: false, //配置自動啟動瀏覽器
overlay: {
warnings: false,
errors: true
},
proxy: {
[process.env.VUE_APP_BASE_API]: {
target: process.env.VUE_APP_BASE_URL,
changeOrigin: true,
pathRewrite: {
["^" + process.env.VUE_APP_BASE_API]: ""
}
}
}
},
css: {
loaderOptions: {
stylus: {
"resolve url": true,
import: []
}
}
}
};
項目打包優(yōu)化配置vue.config.js文件(@vue/cli3)
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來飘蚯,“玉大人馍迄,你說我怎么就攤上這事⌒⒚埃” “怎么了柬姚?”我有些...
- 文/不壞的土叔 我叫張陵,是天一觀的道長庄涡。 經(jīng)常有香客問我量承,道長,這世上最難降的妖魔是什么穴店? 我笑而不...
- 正文 為了忘掉前任撕捍,我火速辦了婚禮,結(jié)果婚禮上泣洞,老公的妹妹穿的比我還像新娘忧风。我一直安慰自己,他們只是感情好球凰,可當(dāng)我...
- 文/花漫 我一把揭開白布狮腿。 她就那樣靜靜地躺著腿宰,像睡著了一般。 火紅的嫁衣襯著肌膚如雪缘厢。 梳的紋絲不亂的頭發(fā)上吃度,一...
- 文/蒼蘭香墨 我猛地睜開眼挖诸,長吁一口氣:“原來是場噩夢啊……” “哼汁尺!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起税灌,我...
- 正文 年R本政府宣布输拇,位于F島的核電站摘符,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏策吠。R本人自食惡果不足惜逛裤,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望猴抹。 院中可真熱鬧带族,春花似錦、人聲如沸蟀给。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽帜消。三九已至模蜡,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間携茂,已是汗流浹背。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- 背景 在使用vue-cli搭建vue項目的時候并巍,由于3.0比起2.x精簡了許多配置文件,所以需要自己手動配置相關(guān)的...
- 運行項目自動運行瀏覽器 使用proxy跨域 最終接口地址: http://localhost:3000/testv...