【发布时间】:2019-12-26 02:08:25
【问题描述】:
问题
在我公司的 React Native 项目中,我遇到了这样的代码,它聚合了来自多个模块的导出:
export Icon from "./Icon";
export Input from "./Input";
export Pills from "./Pills";
我的编辑器将此突出显示为无效语法。我检查了MDN docs on export,确实他们没有列出这样的聚合语法。从他们列出的内容看来,正确的应该是:
export { default as Icon } from "./Icon";
export { default as Input } from "./Input";
export { default as Pills } from "./Pills";
但是第一个代码在我所在的 React Native 项目中有效。
问题
这是 JavaScript 中的有效语法,还是只有我们在项目中使用的某些第三方包可用?
【问题讨论】:
-
你试过了吗?从“./Icon”导出{图标};
-
@sagar 该语法要求模块命名为 export
Icon,而帖子中的代码导出的是default导出,而不是命名的。 -
您只能使用 default 关键字导出默认导出,并在大括号中使用它们的名称或使用 * 来导出 ES6 中的所有命名导出。否则,从语法上讲就是错误的。