這兩天一直在練習(xí)這個(gè)webpack4, 發(fā)現(xiàn)有好多問(wèn)題和坑,做開(kāi)發(fā)嘛,一定要有喜歡出問(wèn)題并喜歡解決問(wèn)題,堅(jiān)決踩個(gè)坑填個(gè)坑的不怕死小強(qiáng)精神!
webpack4 在配置上其實(shí)是可以是想production和development的,
// webpack.config.jsmodule.exports = { // webpack會(huì)根據(jù)mode進(jìn)行對(duì)Js打包,development壓縮,production下面自動(dòng)壓縮,親測(cè)沒(méi)有問(wèn)題 mode: 'development' // production}但是從js里面分離出來(lái)的css怎么打包呢?
我找了一天的相關(guān)文章,好多都是說(shuō)webpack自動(dòng)支持css壓縮,有的是說(shuō)需要插件,對(duì),就是用插件
optimize-css-assets-webpack-plugin
不過(guò)一定要看Npm官方網(wǎng)站
⚠️ For webpack v3 or below please use optimize-css-assets-webpack-plugin@3.2.0. The optimize-css-assets-webpack-plugin@4.0.0 version and above supports webpack v4.
做法是先安裝 optimize-css-assets-webpack-plugin
const optimizeCss = require('optimize-css-assets-webpack-plugin');module.exports = { ....., // plugins: [ new optimizeCss({ assetNameRegExp: //.style/.css$/g, cssProcessor: require('cssnano'), cssProcessorOptions: { discardComments: { removeAll: true } }, canPrint: true }), ], // 這個(gè)還待研究,看字面意思是優(yōu)化的意思 optimization: { // minimize: true, minimizer: [new optimizeCss({})], } }以上里面的代碼我也是看別人寫(xiě)的,所以還需要安裝一個(gè)'cssnano'的包
之后運(yùn)行生產(chǎn)環(huán)境打包命令,哦也,css果然壓縮了,但是看js,居然沒(méi)有被壓縮,不加上述代碼的話js確實(shí)是默認(rèn)壓縮的,于是網(wǎng)上又找解決方案,都說(shuō)webpack4只要設(shè)置mode production即可,但是現(xiàn)在有個(gè)問(wèn)題,壓縮了css之后js就不會(huì)壓縮,于是帶著試試看的心里繼續(xù)安裝之前壓縮Js的插件 uglify-webpack-plugin
最后發(fā)現(xiàn)問(wèn)題解決了,只是我的心得,也是誤打誤撞,但如果有好的解決方案請(qǐng)大家積極留言,共同進(jìn)步,把webpack吃透!
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注