导出导入的模块

问题描述 投票:21回答:2

我有两个javascript模块,如下所示:

// inner/mod.js
export function myFunc() {
   // ...
}

// mod.js
import * as inner from "./inner/mod";

我想从myFunc出口mod.js。我怎样才能做到这一点?

编辑:我应该澄清,该函数正在按照预期从inner/mod.js导出,但我也想从外部mod.js导出功能。

对于那些要求澄清的人,我想实现这个目标:

// SomeOtherFile.js
import * as mod from "mod"; // NOT inner/mod

mod.myFunc();
javascript ecmascript-6 es2015
2个回答
44
投票

我相信你在寻找的是

export * from './inner/mod';

这将再次出口./inner/mod的所有出口。 spec实际上有很好的表格列出所有可能的importexport变种。


14
投票
// inner/mod.js
export function myFunc() {
   // ...
}

// mod.js
import { myFunc } from "./inner/mod";
export { myFunc };

尽量明确你导入的内容,越少越好,因为我已经在mod.js中更改了你的导入。如果导入*,则定义一个变量,该变量将是从您导入的模块导出的所有名称的对象。

重新导出与制作自己的东西和导出相同。

© www.soinside.com 2019 - 2024. All rights reserved.