要弄明白這個問題,我們先要弄清楚什么是開發環境,什么是生產環境。開發環境中是基本不會對js進行壓縮的,在開發預覽時我們需要明確的報錯行數和錯誤信息,所以完全沒有必要壓縮JavasScript代碼。而生產環境中才會壓縮JS代碼,用于加快程序的工作效率。devServer用于開發環境,而壓縮JS用于生產環境,在開發環境中作生產環境的事情所以Webpack設置了沖突報錯。
生產環境中壓縮js會無法調試(找不到第幾行)
在實際開發中,webpack配置文件是分開的,開發環境一個文件,生產環境一個文件。
把dist目錄下面的index.html剪切復制到src目錄下,index.html里面引入的js代碼可以刪除掉(會自動引入js代碼),這就是模板文件
在webpack-config.js里面引入插件
plugins:[ new htmlPlugin({ minify:{ removeAttributeQuotes:true //對html進行壓縮,去掉屬性的雙引號 hash:true, //為了開發中js有緩存效果,加入hash可以有效避免緩存JS template: ./src/index.html //是要打包的html模板路徑和文件名稱 ]
i ?wds?: Project is running at http://10.212.109.18:8087/ i ?wds?: webpack output is served from / i ?wds?: Content not from webpack is served from F:/webLearn/webpackLearn/dist ? ?wdm?: Hash: 027dd749b565ba3b200d Version: webpack 4.15.1 Time: 3008ms Built at: 2018-07-11 08:49:13 Asset Size Chunks Chunk Names entry2.js 139 KiB 0 [emitted] entry2 entry.js 145 KiB 1 [emitted] entry index.html 427 bytes [emitted] Entrypoint entry = entry.js Entrypoint entry2 = entry2.js
出現上述代碼即成功
如下所示即打包成功
Hash: 40112e2b8d4dc81b512bVersion: webpack 4.15.1Time: 5299msBuilt at: 2018-07-11 08:47:26Asset Size Chunks Chunk Namesentry2.js 962 bytes 0 [emitted] entry2entry.js 6.75 KiB 1 [emitted] entryindex.html 427 bytes [emitted][0] ./src/entry2.js 33 bytes {0} [built][4] ./node_modules/css-loader!./src/css/index.css 227 bytes {1} [built][5] ./src/css/index.css 1.06 KiB {1} [built][6] ./src/entry.js 94 bytes {1} [built]+ 3 hidden modulesWARNING in configurationThe mode option has not been set, webpack will fallback to production for this value. Set mode option to development or production to enable defaults for each environment.You can also set it to none to disable any default behavior. Learn more: https://webpack.js.org/concepts/mode/Child html-webpack-plugin for index.html : 1 asset[0] (webpack)/buildin/module.js 497 bytes {0} [built][1] (webpack)/buildin/global.js 489 bytes {0} [built][3] ./node_modules/html-webpack-plugin/lib/loader.js!./src/index.html 511 bytes {0} [built]+ 1 hidden module
把dist目錄刪掉 ,在終端輸入webpack進行打包
在終端輸入 npm run dev 在瀏覽器中運行
plugins里面配置如下:
const htmlPlugin=require(‘html-webpack-plugin’);
在終端里面進行安裝:npm install –save-dev html-webpack-plugin
配置html
相關推薦:
自己寫HTML用Cordova打包與用AppCan、Dcloud、WeX5、ApiCloud有何區別?
css文件如何進行打包?css文件打包的方法
以上就是html文件如何打包 ?html文件打包的方法介紹的詳細內容,html教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答