JavaScript import 구문 자바 스크립트에도 import 구문이 들어 왔다.
아래는 Syntax 이다
정적 import 문은 다른 모듈에서 내 보낸 바인딩을 가져 오는 데 사용됩니다. 가져온 모듈은 귀하가 그러한 모듈을 선언했는지 여부와 관계없이 엄격 모드입니다. import 문은 포함 된 스크립트에서 type = “module”이 아닌 한 사용할 수 없습니다.
위에 부분에서 한참을 헤매었다.
type = “module”의 스크립트를 필요로하지 않는 함수와 같은 동적 import ()도 있습니다. 이전 버전과의 호환성은 script 태그의 속성 nomodule을 사용하여 보장 할 수 있습니다.
동적 가져 오기는 모듈을 조건부로 로드하거나 필요에 따라로드하려는 경우에 유용합니다. 정적 양식은 초기 종속성을로드하는 데 바람직하며 정적 분석 도구와 트리 떨림에서 더 쉽게 얻을 수 있습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 import defaultExport from "module-name" ;import * as name from "module-name" ;import { export } from "module-name" ;import { export as alias } from "module-name" ;import { export1 , export2 } from "module-name" ;import { foo , bar } from "module-name/path/to/specific/un-exported/file" ;import { export1 , export2 as alias2 , [...] } from "module-name" ;import defaultExport, { export [ , [...] ] } from "module-name" ;import defaultExport, * as name from "module-name" ;import "module-name" ;var promise = import ("module-name" );
import 예제 구문은
1 2 3 4 5 import * as myModule from '/modules/my-module.js' ;import {myExport} from '/modules/my-module.js' ;
모듈을 import 하기 위해선 모듈 export가 되어 있어야 된다.
그럼 export Syntax를 보면
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 export let name1, name2, …, nameN; export let name1 = …, name2 = …, …, nameN; export function functionName ( ){...}export class ClassName {...}export { name1, name2, …, nameN };export { variable1 as name1, variable2 as name2, …, nameN };export default expression;export default function (… ) { … } export default function name1 (… ) { … } export { name1 as default , … };export * from …;export { name1, name2, …, nameN } from …;export { import1 as name1, import2 as name2, …, nameN } from …;export { default } from …;
사용법
1 2 3 4 5 6 7 8 9 10 export { myFunction, myVariable }; export let myVariable = Math .sqrt (2 );export myFunction ( ) { ... };
참조