我收到以下错误:
无效的配置对象。 Webpack已使用a初始化 与API架构不匹配的配置对象。 - configuration.resolve具有未知属性' root'。这些属性是有效的:object {alias?,aliasFields?, cachePredicate?,descriptionFiles?,enforceExtension?, enforceModuleExtension?,extensions?,fileSystem?,mainFields?, mainFiles?,moduleExtensions?,modules?,plugins?,resolver?, symlinks?,unsafeCache?,useSyncFileSystemCalls? }
我使用webpack 2.3.2。
我的 webpack.config.js 如下所示:
SELECT
knowledge,
SUM(CASE WHEN join_year = 2017 AND user = 'john' THEN ISNULL(handled_projects_count,0) ELSE 0 END) as cnt
FROM team_members WHERE
knowledge IN ('PHP','JAVA')
GROUP BY knowledge
答案 0 :(得分:44)
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中已弃用。
答案 1 :(得分:1)
您是否尝试删除LINE 8?是否通过任何错误?
您可能已经猜到,当您尝试设置无效的属性时,它会抛出错误。
配置webpack时,您可能遵循的说明可能已过时。
在没有LINE 8的情况下试一试,让我知道问题是否仍然存在,我们可以一起解决。