Imort & Export

2256 ワード

exportとimportは反応器で使用しなければならない文法の一つです.
各Jsファイルはモジュールと言える.
imortおよびexportは、このモジュールをエクスポートまたはロードする必要がある場合に使用します.

Export


exportは、Jsモジュールから関数、オブジェクトの元の値をエクスポートするために使用します.
エクスポートされた値は、他のプログラムからimportにインポートして使用できます.
エクスポートには2つの方法があります.

デフォルトのエクスポート

// 먼저 선언한 식별자 내보내기
export { myFunction as default };

// 각각의 식별자 내보내기
export default function () { ... };
export default class { ... }

知名度のエクスポート

// 먼저 선언한 식별자 내보내기
export { myFunction, myVariable };

// 각각의 식별자 내보내기
// (변수, 상수, 함수, 클래스)
export let myVariable = Math.sqrt(2);
export function myFunction() { ... };

デフォルトのエクスポートは応答から頻繁に発生するメソッドですが、有名なエクスポートは複数の値をエクスポートする場合に便利です.

再エクスポート/グループ化


親モジュールは、子モジュールをインポートして再エクスポートすることもできます.
つまり、1つのモジュールを作成し、複数のモジュールを集約することができます.
export foo from 'bar.js'

// 위 구문은 아래와 동일
import foo from 'bar.js';
export foo;

Import


importは、他のモジュールからエクスポートされたバインドをインポートするために使用されます.
インポート方法は以下のとおりです.
モジュール全体のインポート
import * as myModule from "my-module.js";
モジュールからのメンバーのインポートのみ
import {myMember} from "my-module.js";
モジュールから複数のメンバーをインポート
import {myMember} from "my-module.js";
インポート時の別名の指定
import {reallyReallyLongModuleMemberName as shortName} from "my-module.js";

// 여러 멤버도 가능
import {reallyReallyLongModuleMemberName as shortName, anotherLongModuleName as short} from "my-module.js";
モジュール全体のサイドエフェクトのみをインポートし、バインドする必要はありません.
import "my-module.js";
default export値の取得
// default export 로 export 된 값만 가져온다.
import myModule from "my-module.js";
上のデフォルト構文で実行
この場合、デフォルト値をインポートする部分を宣言します.
import myDefault, * as myModule from "my-module.js";
// myModule used as a namespace

import myDefault, {foo, bar} from "my-module.js";
// specific, named imports