Webpackconfiguration不工作,path必须是绝对的

我的Webpackconfiguration出现错误:

无效的configuration对象。 Webpack已经使用与API模式不匹配的configuration对象进行了初始化。

  • configuration.output.path :提供的值"./"不是绝对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; 

你的path必须是绝对的,而不是相对的。 要使用当前目录,请使用variables__dirname

__dirname

当前模块的目录名称。 这与path.dirname() __filename

__dirname实际上并不是一个全局的,而是每个模块本地的。

例如:从/Users/mjr运行node example.js

 console.log(__dirname); // Prints: /Users/mjr console.log(path.dirname(__filename)); // Prints: /Users/mjr 

因此,它得到你的当前目录的configuration存储在一个绝对path,你应用它是这样的:

 output: { path: __dirname, filename: 'index.js', }, 

(请注意在这个问题中提到的./__dirname之间有区别./指的是调用脚本的terminal的当前目录, __dirname指的是脚本存储在的目录。)