Webpack 5: devtool ValidationError, недопустимый объект конфигурации
При переходе с Webpack 4 на Webpack 5 у меня возникла ошибка при использовании devtool
с пустым значением (только в производственном режиме).
module.exports = {
devtool: isProd ? '' : 'source-map',
// entry: ...
// output: ...
// module: ...
}
Сообщение в консоли:
ValidationError: Invalid configuration object. Webpack has been initialized using a configuration object that does not match the API schema.
- configuration.devtool should match pattern "^(inline-|hidden-|eval-)?(nosources-)?(cheap-(module-)?)?source-map$".
BREAKING CHANGE since webpack 5: The devtool option is more strict.
Please strictly follow the order of the keywords in the pattern.
Есть идеи, как избежать исходных карт в производственном режиме? Что там набирать?
2 ответа
Решение
Ответьте на собственный глупый вопрос! Спойлер:false
.
module.exports = {
devtool: isProd ? false : 'source-map',
}
В Webpack 4 это можно было оценить с помощью пустой строки. webpack 5 более строгий. Конфигурация Webpacks devtool.
почему-то мой
"source-map"
был # в нем, как
"#source-map"
что вызывало эту ошибку. Решил ошибку удалением
#
из строки.
До:
devtool: (config.enabled.sourceMaps ? '#source-map' : false)
После:
devtool: (config.enabled.sourceMaps ? 'source-map' : false)