我有一个使用Babel for Webpack的项目,将ES6代码转换为普通的Js。这非常有效,包括导入的类等,见下文。
结果:
var _Person = __webpack_require__(2);
var vic = new _Person.person("Fred McIntire", "Web Developer");
vic.EchoProperties();
Webpack.config.js
module: {
loaders: [{
test: /\.js$/,
exclude: "/node_modules/",
loader: ['babel'],
query: {
presets: ['es2015']
}
}]
},
然而,当在另一个项目中使用Babel和Grunt时,因此“grunt-babel”插件,我注意到它默认导入CommonJs并且不包括导入的类。
结果
var _Person=require("./modules/Person"),
vic=new _Person.person("Fred McIntire","Web Developer");
vic.EchoProperties();
gruntfile.js
babel: {
options: {
sourceMap: true,
presets: ['es2015'],
plugins: ['transform-es2015-modules-amd']
},
dist: {
files: {
'assets/js/transpiled/app.es6.js': 'assets/js/custom/app.js'
}
}
},
(我包括“插件:['transform-es2015-modules-amd']”仅用于测试目的。)
我希望咕噜咕噜咕噜咕噜地说:(并包括进口)
var _Person = __webpack_require__(2);
不
var _Person=require("./modules/Person")
因此,我如何更新grunt-babel的gruntfile.js设置,以便以与Webpack一样的方式运行?
提前致谢...