执行以下操作有什么区别?
import something from "../something";
export { something };
vs
import something from "../something";
export something;
在react的react-is包中,有一个导出执行相同的操作。我想知道那是什么意思。
这是执行此操作的代码行。 https://github.com/facebook/react/blob/master/packages/react-is/src/ReactIs.js#L69
答案 0 :(得分:1)
只有第一个片段正确。它从../something
导入默认导出,并将其导出为something
从当前模块命名为export。
ES模块export
has limited syntax variations,import
也是如此。如果该语法未在参考文献中列出,则不支持。
export something;
无效,将导致语法错误。 something
是export something
中的一个表达式。根据参考,只有export default
可以使用表达式。
命名出口应包含声明:
export let something = ...;
或者如果something
在当前作用域中已经存在,例如在这种情况下,应使用花括号:
export { something };
如果something
在当前模块中除重新导出外没有用于其他任何用途,则为
import something from "../something";
export { something };
是
export { default as something } from "../something";