绑定的再导出

也许有时你会想将当前模块已导入的内容重新再导出( 例如, 假设要用几个小模块来创建一 个库) 。 你能使用本章已描述过的模式来将已导入的值再导出, 就像这样:

import { sum } from "./example.js";
export { sum }

此方法能奏效, 但还可以使用单个语句来完成相同任务:

export { sum } from "./example.js";

这种形式的 export 会进入指定模块查看 sum 的定义,随后将其导出。当然,你也可以选择将一个值用不同名称导出:

export { sum as add } from "./example.js";

此处,从 "./example.js" 导入的 sum 随后以 add 的名称被导出了。

若你想将来自另一个模块的所有值完全导出,可以使用星号(*)模式:

export * from "./example.js";

使用完全导出,就可以导出目标模块的默认值及其所有具名导出,但这可能影响你从当前模块所能导出的值。例如,假设 example.js 具有一个默认导出,当你使用这种语法时,你就无法为当前模块另外再定义一个默认导出。