#reactjs #webpack #webpack-5
#reactjs #webpack #webpack-5
Вопрос:
Я работаю над проектом react, и когда я обновил webpack 4.44.2 до 5.4.0, я получаю следующее сообщение:
[DEP_WEBPACK_COMPILATION_ASSETS] DeprecationWarning: Compilation.assets will be frozen in future, all modifications are deprecated.
BREAKING CHANGE: No more changes should happen to Compilation.assets after sealing the Compilation.
Do changes to assets earlier, e. g. in Compilation.hooks.processAssets.
Make sure to select an appropriate stage from Compilation.PROCESS_ASSETS_STAGE_*.
(Use `node --trace-deprecation ...` to show where the warning was created)
Я много искал, но не получил точного ответа. Итак, как я могу решить?
Ответ №1:
Обновление 2021, 25 февраля
Выпущен Html-webpack-plugin v5, просто запустите
npm i -D html-webpack-plugin@latest
или
npm uninstall html-webpack-plugin
npm i -D html-webpack-plugin
Оригинальный ответ
В основном это связано с html-webpack-plugin, и хотя его новая версия 5 (интегрированная с webpack v5) все еще находится в бета-версии, вы должны обновить ее вручную:
npm show html-webpack-plugin version
4.5.1
npm show html-webpack-plugin@next version
5.0.0-beta.5
npm i -D html-webpack-plugin@next
Комментарии:
1. Должен быть принятый ответ! Спасибо
2. Я тоже нашел это, но это не исправило это для меня.
Ответ №2:
Вы выполняете команду like npx webpack
? Если это так, вы можете использовать:
$ node --trace-deprecation ./node_modules/.bin/webpack
Он должен показать вам все те плагины webpack, которые выдают эти предупреждения.
Комментарии:
1. В моем случае мне пришлось использовать трассировку таким образом
node --trace-deprecation ./node_modules/webpack-cli/bin/cli.js
(я запускаю webpack, используя package.jsonscripts
черезnpn run build
)
Ответ №3:
Эти предупреждения об устаревании незначительны. Корневой случай — это плагины, которые нарушают совершенно новые спецификации Webpack 5. Когда-нибудь они будут качаться вместе (на некоторое время).
Вы можете обойти [DEP_WEBPACK_COMPILATION_ASSETS]
это, обновив пакеты npm. Проверьте последние версии с помощью:
npm outdated
Это сработало для меня, но теперь я получаю [DEP_WEBPACK_COMPILATION_OPTIMIZE_CHUNK_ASSETS]
. Просто подождите и увидите.
Комментарии:
1. Работает нормально, просто запустите
npm update
(илиnpm update --force
, если необходимо) позже