我的Webpack配置出错:
无效的配置对象。 Webpack已使用与API架构不匹配的配置对象进行初始化。
configuration.output.path
:提供的值"./"
不是绝对路径!
这是我的webpack.config.js
:
var config = {
entry: './main.js',
output: {
path:'./',
filename: 'index.js',
},
devServer: {
inline: true,
port: 8080
},
module: {
loaders: [
{
test: /\.jsx?$/,
exclude: /node_modules/,
loader: 'babel',
query: {
presets: ['es2015', 'react']
}
}
]
}
}
module.exports = config;
答案 0 :(得分:4)
你的path
必须是绝对的,而不是相对的。要使用当前目录,请使用变量__dirname
:
__目录名称
当前模块的目录名称。这与
path.dirname()
的{{1}}相同。
__filename
实际上并不是全局性的,而是每个模块的本地化。示例:从
运行__dirname
node example.js
/Users/mjr
因此,它会将您的配置存储在当前目录中作为绝对路径,并按以下方式应用它:
console.log(__dirname);
// Prints: /Users/mjr
console.log(path.dirname(__filename));
// Prints: /Users/mjr
(请注意output: {
path: __dirname,
filename: 'index.js',
},
和./
之间存在差异,如question中所述。__dirname
是指调用脚本的终端的当前目录./
1}}指的是脚本存储在的目录。)