是否可以使用ES6模块语法重新创建以下内容?
var foo = {};
module.exports = foo;
ES6支持将声明性关键字添加到表达式中,如下所示:
export var foo = 'bar';
但是,当通过6to5运行时,将生成:
var foo = exports.foo = 'bar';
是否可以将此语法与default关键字结合使用,以生成顶部代码段?
最佳答案
您必须使用foo
关键字导出default
实体:
var foo = {};
export default foo;
它将确切生成您想要的东西。
PS:每个模块只能导出一个
default
变量,并且可以不使用大括号将其导入:import foo from 'some_module';
如果要导出多个变量:
export var foo = 10;
export var boo = 'something';
然后,您必须使用大括号将它们导入:
import { foo, boo } from 'some_module';
在这种情况下,
6to5
会比您的示例生成更复杂的结果。有关ES6模块的更多信息,请阅读here
关于javascript - 具有6to5的ES6默认模块语法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27932736/