web-dev-qa-db-ja.com

インポートされたモジュールをエクスポートする

次のような2つのjavascriptモジュールがあります。

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

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

mod.jsからmyFuncをエクスポートしたいと思います。これどうやってするの?

編集:関数がinner/mod.jsから期待どおりにエクスポートされていることを明確にする必要がありますが、外部mod.jsから関数もエクスポートしたいです。

明確化を求めている人々に、私はこれを達成したいと思います:

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

mod.myFunc();
22
Max

あなたが探しているのは

export * from './inner/mod';

これにより、./inner/modのすべてのエクスポートが再エクスポートされます。 spec には、実際にすべての import および export バリアントをリストした非常に素晴らしいテーブルがあります。

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

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

Mod.jsでインポートを変更したため、インポートするものを明示するようにしてください。 do import *の場合、インポートしたモジュールからエクスポートされるすべての名前のオブジェクトとなる変数を定義します。

再エクスポートは、独自のものを作成してエクスポートすることと同じです。

14
Norbert