webpack使用問題記錄
1、版本問題
webpack的安裝并不是越新越好。當(dāng)使用最新版本時(shí)不使用配置文件,直接編譯不生成文件甚至報(bào)錯(cuò);使用3.12版本時(shí)編譯文件可以成功但是不生成新文件;使用 3.5.3 版本時(shí)成功且生成新文件。所以建議使用 3.5.3 版本
而且使用最新版本時(shí),webpack 和 webpack-cli 的版本兼容問題很多,好像是因?yàn)閣ebpack-cli 的最新版本都還低于 webpack的最新版本。
2、報(bào)錯(cuò)信息:
2.1、Cannot find module 'ajv-errors'
webpack本地安裝時(shí)顯示Cannot find module 'ajv-errors',兩種方法:
-
單獨(dú)再安裝該模塊 npm install ajv-errors(建議使用方法2, 因?yàn)樵摲椒赡苡謺?huì)使其他模塊安裝不完整)
-
先把node_modules目錄刪除,再重新npm install安裝所有依賴,建議在網(wǎng)絡(luò)良好情況下下載,如還是太慢或者出錯(cuò),可以使用cnpm install, 前提是已經(jīng)配置好 cnpm淘寶鏡像。
2.2、cannot find module resolve-from
webpack運(yùn)行 webpack-dev-server 時(shí)顯示cannot find module resolve-from
解決方法:刪掉node_modules ,重新npm install
3、版本問題的報(bào)錯(cuò)信息:
3.1、invalid "instanceof" keyword value Promise
報(bào)錯(cuò):invalid "instanceof" keyword value Promise可能是因?yàn)閣ebpack、webpack-cli、webpack-dev-server的版本兼容問題
以下版本可以:

3.2、babel-core和babel-loader的兼容問題
以下版本可行:

3.3、使用 css-loader 時(shí)出錯(cuò)
錯(cuò)誤信息:

版本太高,安裝低版本可行:css-loader@1.0.1
3.4、css-loader 在使用 css module 時(shí)添加 localIdentName 選項(xiàng)出錯(cuò)
錯(cuò)誤信息:

應(yīng)該是版本問題,下面版本可兼容

在JS文件中使用 styles 引入后才有效果。
3.5、react實(shí)現(xiàn)熱加載后瀏覽器不能自動(dòng)刷新
react實(shí)現(xiàn)熱加載后瀏覽器不能自動(dòng)刷新,編譯也不報(bào)錯(cuò),此時(shí)可能是webpack和webpack-dev-server的版本兼容問題,可能是webpack的版本太低而webpack-dev-server的版本太高
下面版本可兼容

4、使用問題
使用上的建議:webpack最好別全局安裝,建議本地安裝。使用時(shí)通過npm命令使用。
4.1、文本編輯問題
webpack中使用 本地服務(wù)器 webpack-dev-server 的文本編輯問題
使用自動(dòng)編譯代碼時(shí),可能會(huì)在保存文件時(shí)遇到一些問題。某些編輯器具有“安全寫入”功能,可能會(huì)影響重新編譯。
要在一些常見的編輯器中禁用此功能,請查看以下列表:
- Sublime Text 3 - 在用戶首選項(xiàng)(user preferences)中添加
atomic_save: "false"。 - IntelliJ - 在首選項(xiàng)(preferences)中使用搜索,查找到 "safe write" 并且禁用它。
- Vim - 在設(shè)置(settings)中增加
:set backupcopy=yes。 - WebStorm - 在
Preferences > Appearance & Behavior > System Settings中取消選中 Use"safe write"。
可參考:https://webpack.docschina.org/guides/development/#adjusting-your-text-editor

浙公網(wǎng)安備 33010602011771號(hào)