webpack命令


1.webpack --mode development

 原因:非全局安裝   ,全局安裝即可,npm i webpack webpack-cli -g

2. webpack  --mode development

開發環境下打包,默認入口及出口文件。

3. webpack  ./src/index.js -o ./build --mode development

通過命令指定入口文件及出口文件

 4、webpack5打包圖片路徑
1)參考:

https://www.jianshu.com/p/36e972b19b28

https://blog.csdn.net/w184167377/article/details/118930758?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0.no_search_link&spm=1001.2101.3001.4242.0

2)webpack5打包圖片失敗原因:

https://forum.framework7.io/t/module-build-failed-from-node-modules-mini-css-extract-plugin-dist-loader-js/14082

if update css-loader ^5.2.7 → ^6.2.0 no longer loads font icons correctly solution downgrade to 5.2.7
https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md#600-2021-07-14

 

 不管如何修改publicPath和outputPath值都報下圖錯誤:

  本機下載css-loader為^6.4.0,將css-loader版本改為^5.2.7后解決

 5、webpack打包css時排除某一個css文件配置方法???

 

 

  webpack.config.js中配置所有css文件都放置在css文件夾下

方法一:使用插件將fontawesome-4.2.0文件夾下的所有文件復制到dist文件夾下

webpack.config.js在build文件夾下,因此復制時需要到父級目錄

 

 獲取__dirname的父級目錄:path.resolve(__dirname,'..');

前提:此處css不需要再打包,若需要打包呢????
 

6、如何打包公共部分(公共css、js、html代碼)???

 

7、添加devServer后運行npx webpack serve報錯

 

提示static heartbeatInterval = 1000;

解決方法:版本兼容問題

https://www.cnblogs.com/zhaomeizi/p/15370903.html 

更新版本后運行報錯:

 原因:devServet下的contentBase屬性不要設置,新版本默認會自帶,設置了就會報錯

參考:https://www.bilibili.com/video/BV1e7411j7T5?p=9  【泥煤啊的123 】 評論

 8. eslint檢查js語法時報錯:

 webpack.config.js中配置如下:

 將eslint-loader修改為eslint-webpack-plugin后仍報錯:

 

參考:https://www.jianshu.com/p/fcdb336c8580

升級node版本,本地node版本為11.13.0(node -v)

 升級后webpack運行報錯:

webpack : 無法將“webpack”項識別為 cmdlet、函數、腳本文件或可運行程序的名稱。

全局安裝webpack后:

webpack : 無法加載文件 C:\Users\hp\AppData\Roaming\npm\webpack.ps1,因為在此系統上禁止運行腳本。

參考:https://blog.csdn.net/qq_44255146/article/details/115246137

 

 warning  Unexpected console statement  no-console

// eslint-disable-next-line
console.log(sum(2,3));

 9、壓縮js

將webpack.config.js中mode修改為"production"或者直接啟動  npm run build:pro(package.json)

10、壓縮html

html-webpack-plugin插件中配置:
minify: { // 壓縮HTML文件
     removeComments: true, // 移除HTML中的注釋
     collapseWhitespace: true // 刪除空白符與換行符
}

11、壓縮css

使用cssMinimizerWebpackPlugin,不在使用optimizeCssAssetWebpackPlugin
optimization:{
        //壓縮css(只生產環境起作用,若開發環境也壓縮,要配置minimize:true)
        minimizer:[
            new cssMinimizerWebpackPlugin()
        ],
        minimize: true,//開發環境下也壓縮css
}

 12、webpack中使用ProvidePlugin引入jquery,仍報jquery未定義

webpack.cofig.js:

plugins:[
        new webpack.ProvidePlugin({//載入jq
            //$:require.resolve("jquery"),//doesn't work
            jQuery: require.resolve('jquery')//work well
        }),
        ...
]

參考 : https://stackoverflow.com/questions/45899466/provideplugin-not-working-with-jquery-webpack

13、Uncaught Error: ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: ./src/entryjs/common/common.js

import { setCookie,getCookie } from '../common/cookie';
function getCommonHeader(){
    ....
}
function getCommonFooter(){
    ....
}
module.exports = { getCommonHeader,getCommonFooter }

common.js中代碼如上,打包后查看html報錯

module.exports為commonjs寫法,改為js寫法

export { getCommonHeader,showSubNav,hideSubNav,user_center,isLogin,getCommonFooter,getCommonHeaderUserCenter,getCommonRightNav,showMessage,closeFun,isIEFun,Appendzero,getRecentDate,GetQueryString,loadingToggle,closeByHand }

common.js中引入時:

// import '../common/common';
import { getCommonHeader,showSubNav,hideSubNav,user_center,isLogin,getCommonFooter,getCommonHeaderUserCenter,getCommonRightNav,showMessage,closeFun,isIEFun,Appendzero,getRecentDate,GetQueryString,loadingToggle,closeByHand } from '../common/common';

若方法為定義在原型上的方法:

Date.prototype.format = function(fmt){...}

可直接在js中使用,無需要再export 或 import

 

14、js中圖片打包問題

 打包后html中未正確引入打包后的圖片地址

// import '../../image/top_logo.png';  //doesn't work
// import '../../image/wordtwo.png';    //doesn't work
import top_log from '../../image/top_logo.png'; 
import wordtwo from '../../image/wordtwo.png';

參考:https://juejin.cn/post/6844903954988580872

15、webpack5 Cannot find module ‘webpack-cli/bin/config-yargs‘

參考:

https://webpack.docschina.org/configuration/dev-server/#devserverlivereload

https://blog.csdn.net/qq_39816673/article/details/116133133

16、修改代碼后頁面不自動刷新

https://webpack.docschina.org/configuration/dev-server/#devserverlivereload


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM