У Configuration.resolve есть неизвестное свойство 'root'
Я получаю следующую ошибку:
Неверный объект конфигурации. Webpack был инициализирован с использованием объект конфигурации, который не соответствует схеме API. - configuration.resolve имеет неизвестное свойство "root". Эти свойства действительны: object {alias?, aliasFields?, cachePredicate?, descriptionFiles?, enforceExtension?, принудительно использоватьModuleExtension?, extensions?, fileSystem?, mainFields?, mainFiles?, moduleExtensions?, modules?, plugins?, resolver?, symlinks?, unsafeCache?, useSyncFileSystemCalls? }
Я использую webpack 2.3.2.
Мой webpack.config.js выглядит следующим образом:
module.exports= {
entry:'./public/app.jsx',
output: {
path: __dirname,
filename:'./public/bundle.js'
},
resolve: {
root: __dirname,
alias:{
Mod1: 'public/components/mod1.jsx',
Mod2:'public/components/mod2.jsx',
Mod3: 'public/components/mod3.jsx'
},
extensions: ['*','.js','.jsx']
},
module :{
loaders:[{
loader :'babel-loader',
query :{
presets:['react','es2015','es2017']
},
test:/\.jsx?$/,
exclude:/(node_modules|bower_components)/
}]
}
};
Ответы
Ответ 1
resolve.root
является конфигурацией Webpack 1 и не существует для Webpack 2.
Для Webpack 2 вы можете использовать resolve.modules
: https://webpack.js.org/configuration/resolve/#resolve-modules
module.exports= {
entry:'./public/app.jsx',
output: {
path: __dirname,
filename:'./public/bundle.js'
},
resolve: {
modules: [__dirname, 'node_modules'],
alias:{
Mod1: 'public/components/mod1.jsx',
Mod2:'public/components/mod2.jsx',
Mod3: 'public/components/mod3.jsx'
},
extensions: ['*','.js','.jsx']
},
module :{
rules:[{
use : 'babel-loader',
query :{
presets:['react','es2015','es2017']
},
test: /\.jsx?$/,
exclude: /(node_modules|bower_components)/
}]
}
};
Я также обновил module.loaders
→ module.rules
, поскольку это устарело в Webpack 2.
Ответ 2
Вы пытались удалить LINE 8? Происходит ли это через какие-либо ошибки?
Как вы, наверное, догадались, что это ошибка, поскольку вы пытаетесь установить недопустимое свойство.
Существует вероятность того, что инструкции, которые вы, возможно, соблюдали при настройке веб-пакета, устарели.
Дайте ему пройти без LINE 8 и сообщите мне, сохраняются ли проблемы, и мы можем исправить их вместе.