У конфигурации.module есть неизвестные свойства 'loaders'
мой выход ошибки:
Неверный объект конфигурации. Webpack был инициализирован с использованием объекта конфигурации, который не соответствует схеме API. - configuration.module имеет неизвестные свойства 'loaders'. Эти свойства действительны: object {exprContextCritical?, exprContextRecursive?, exprContextRegExp?, exprContextRequest?, noParse?, rules?, defaultRules?, unknownContextCritical?, unknownContextRecursive?, unknownContextRegExp?, unknownContextRequest?, unsafeCache?, wrappedContextCritical?, wrappedContextRecursive?, wrappedContextRegExp?, strictExportPresence?, strictThisContextOnImports? } → Options affecting the normal modules (NormalModuleFactory
). } → Параметры, влияющие на нормальные модули (NormalModuleFactory
).
мой webpack.config.js:
var webpack = require('webpack');
var path = require('path');
var BUILD_DIR = path.resolve(__dirname, 'src/client/public');
var APP_DIR = path.resolve(__dirname, 'src/client/app');
var config = {
entry: APP_DIR + '/index.jsx',
module : {
loaders : [
{
test : /\.jsx?/,
include : APP_DIR,
loader : 'babel-loader'
}
]
},
output: {
path: BUILD_DIR,
filename: 'bundle.js'
}
};
module.exports = config;
моя версия веб-пакета:
[email protected]
Ответы
Ответ 1
Вы должны изменить loaders
на rules
в веб-пакете 4:
Изменение:
loaders
в:
rules
источник: грузчики
Пример:
module.exports = {
module: {
rules: [
{ test: /\.css$/, use: 'css-loader' },
{ test: /\.ts$/, use: 'ts-loader' }
]
}
};
Ответ 2
Используйте rules
в webpack 4 вместо loaders
.
https://webpack.js.org/concepts/loaders/
Ответ 3
Вышеуказанные ответы работают, но мы можем решить эту проблему, изменив версию webpack и webpack-dev-server, чтобы
"webpack": "3.8.1",
"webpack-dev-server": "2.9.4"
Он также может решить проблему. Надеюсь, это поможет.
Ответ 4
Вы должны использовать утилиту перенастройки для переноса файлов конфигурации webpack, это сработало для меня.
Документация по миграции также полезна.