320x100
320x100
동적으로 모듈 가져오기
- 정적인 방식인 export 및 import를 이용할 경우 제약사항이 있음
: import 문에 동적 매개변수를 사용할 수 없음
: 런타임이나 조건부로 모듈을 불러올 수 없음
import () 표현식
: 모듈을 읽고 이 모듈이 내보내는 모두 포함하는 객체를 담은 이행된 프라미스를 반환하는 방식
: 코드 내 어디에서나 동적으로 사용 가능
let modulePath = prompt("어떤 모듈을 불러오고 싶으세요?");
import(modulePath)
.then(obj => <모듈 객체>)
.catch(err => <로딩 에러, e.g. 해당하는 모듈이 없는 경우>)
- let module = await import(modulePath) 방식 사용
// 📁 say.js
export function hi() {
alert(`안녕하세요.`);
}
export function bye() {
alert(`안녕히 가세요.`);
}
let {hi, bye} = await import('./say.js');
hi();
bye();
- default export 모듈 사용
// 📁 say.js
export default function() {
alert("export default한 모듈을 불러왔습니다!");
}
let obj = await import('./say.js');
let say = obj.default;
// 위 두 줄을 let {default: say} = await import('./say.js'); 같이 한 줄로 줄일 수 있습니다.
say();
Refference
동적으로 모듈 가져오기
ko.javascript.info
300x250
728x90
'Programming > JavaScript' 카테고리의 다른 글
모던 자바스크립트 14. 커링 (0) | 2022.04.23 |
---|---|
모던 자바스크립트 13. Eval (문자열 코드 실행하기) (0) | 2022.04.23 |
모던 자바스크립트 (모듈) 12-2. 모듈 내보내고 가져오기 (0) | 2022.04.23 |
모던 자바스크립트 (모듈) 12-1. 모듈 (0) | 2022.04.23 |
모던 자바스크립트 11. async 이터레이터와 제너레이터 (0) | 2022.04.23 |