我有一个使用Babel for Webpack的项目,将ES6代码转换为普通的Js . 这非常有效,包括导入的类等,见下文 .

Result:

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并且不包括导入的类 .

Result

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一样的方式运行?

提前致谢...