Babel 6更改默认导出方式
以前,babel将添加这行module.exports = exports["default"]。它不再这样做。这意味着在我不能做之前: var foo = require('./foo'); // use foo 现在,我必须这样做: var foo = require('./foo').default; // use foo 没什么大不了的(我猜这就是应该一直以来的样子)。问题是我有很多代码取决于事情的工作方式(我可以将大多数代码转换为ES6导入,但不是全部)。任何人都可以给我有关如何使旧方法工作的提示,而不必经历我的项目并解决此问题的方法(甚至是一些有关如何编写codemod来做到这一点的说明也很巧妙)。 谢谢! 例: 输入: const foo = {} export default foo 使用Babel 5输出 "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var foo = {}; exports["default"] = foo; module.exports = exports["default"]; 使用Babel …