Javascript 为什么我的网页配置的es6版本会给我一个错误,而es5版本不会';T

Javascript 为什么我的网页配置的es6版本会给我一个错误,而es5版本不会';T,javascript,ecmascript-6,webpack,babeljs,Javascript,Ecmascript 6,Webpack,Babeljs,我正在使用webpack捆绑一个项目,我正在使用使用babel 6(节点5,npm 3)编译的配置进行捆绑: 但是,对于babel 6,当我运行webpack时,会出现一个错误: 未配置输出文件名。 如果我将此代码翻译回es5: var webpack = require('webpack'); module.exports = { entry: './node_modules/graphql/graphql.js', output: { path: './build',

我正在使用webpack捆绑一个项目,我正在使用使用babel 6(节点5,npm 3)编译的配置进行捆绑:

但是,对于babel 6,当我运行
webpack
时,会出现一个错误:

未配置输出文件名。

如果我将此代码翻译回es5:

var webpack = require('webpack');

module.exports = {
  entry: './node_modules/graphql/graphql.js',
  output: {
    path: './build',
    filename: 'bundle.js',
    libraryTarget: "var",
    library: "graphql"
  },
  resolve: {
    extensions: ['', '.js']
  },
  devtool: 'eval'
};
它很好用

我的
.babelrc
文件如下所示:

{
  "plugins": ["transform-es2015-modules-commonjs"]
}
我在本地节点_模块中安装了以下软件包:

├── babel@6.0.15
├── babel-core@6.1.2
├── babel-loader@6.0.1
├── babel-plugin-transform-es2015-modules-commonjs@6.1.3
├── babel-runtime@6.0.14
├── graphql@0.4.12
└── webpack@1.12.3
编辑 在进一步检查Babel吐出的代码后,我认为我的问题是
导出默认值
没有正确地传输到
模块。导出

'use strict';

Object.defineProperty(exports, "__esModule", {
  value: true
});

var _webpack = require('webpack');

var _webpack2 = _interopRequireDefault(_webpack);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

exports.default = {
  entry: './node_modules/graphql/graphql.js',
  output: {
    path: './build',
    filename: 'bundle.js',
    libraryTarget: "amd",
    library: "graphql"
  },
  resolve: {
    extensions: ['', '.js']
  },
  devtool: 'eval'
};

如何让Babel使用
transform-es2015-modules-commonjs
插件将es6模块代码正确地传输到节点的模块格式?

看起来Babel不推荐使用此功能


在这里查看我的另一个答案:。如果您只是希望能够转换配置文件,那么这可能会起作用。
'use strict';

Object.defineProperty(exports, "__esModule", {
  value: true
});

var _webpack = require('webpack');

var _webpack2 = _interopRequireDefault(_webpack);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

exports.default = {
  entry: './node_modules/graphql/graphql.js',
  output: {
    path: './build',
    filename: 'bundle.js',
    libraryTarget: "amd",
    library: "graphql"
  },
  resolve: {
    extensions: ['', '.js']
  },
  devtool: 'eval'
};