Подтвердить что ты не робот

Экспорт импортированного модуля

У меня есть два модуля javascript, которые выглядят следующим образом:

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

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

Я хотел бы экспортировать myFunc из mod.js. Как я могу это сделать?

EDIT: я должен уточнить, что функция экспортируется, как ожидалось, из inner/mod.js, но я также хочу экспортировать funtion из внешнего mod.js.

Тем, кто просит разъяснений, я хотел бы добиться этого:

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

mod.myFunc();
4b9b3361

Ответ 1

Я верю, что вы ищете

export * from './inner/mod';

Это реэкспортирует весь экспорт ./inner/mod. В спецификации есть очень хорошие таблицы, в которых перечислены все возможные варианты import и export.

Ответ 2

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

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

Попробуйте быть явным в том, что вы импортируете, тем лучше, из-за этого я изменил ваш импорт в mod.js. Если вы сделаете import *, вы определяете переменную, которая будет объектом экспорта всех имен из импортированного вами модуля.

реэкспортирование - это то же самое, что делать что-то свое и экспортировать.