重命名导出与导入
有时,你可能并不想使用从模块中导出的变量、函数或类的原始名称。 幸好,你可以更改导出的名称,无论在导出过程中,还是导入过程中,都可以。
前一种情况下,假设你想用不同的名称来导出一个函数,你可以使用 as 关键字来指定新的名称,以便在模块外部用此名称指代目标函数:
function sum(num1, num2) {
return num1 + num2;
}
export { sum as add };
此处的 sum() 函数被作为 add() 导出,前者是本地名称(local name),后者则是导出名称(exported name)。这意味着当另一个模块要导入此函数时,它必须改用 add 这个名称:
import { add } from "./example.js";
假若模块导入函数时想使用另一个名称,同样也可以用 as 关键字:
import { add as sum } from "./example.js";
console.log(typeof add); // "undefined"
console.log(sum(1, 2)); // 3
此代码导入了 add() 函数,并使用了导入名称(import name)将其重命名为 sum()(本地名称)。这意味着在此模块中并不存在名为 add 的标识符。