Module

이홍경·2021년 9월 27일
0
post-thumbnail

Module

평소 그냥 이렇게 쓰는 것이다, 아무렇지도 않게 그냥 쓰던 것이 궁금해 졌다.

import, export, export default, import {something} from '...', as .....

코딩을 하다가 궁금해 져서 정리해 놓을까 한다.

  • Named export
    연산.js
    export const add = (a, b) => a + b;
    export const minus = (a, b) => a - b;
    export const devide = (a, b) => a * b;
    다른파일.js 👇👇👇👇👇
    import {add} from './연산.js' 
    import {add, minus} from './연산.js'
    // 함수의 이름이 절대로 같아야 한다 !!! 아님 동작을 안함.
    // 이름을 바꿔 사용하고 싶다면 import {add as plus} from './연산.js' 이렇게 바꾸자

  • export default
    연산.js
    export default {add, minus, devide};
    // 위의 함수들을 가지고 있는 한개의 객체를 default로 export 하는 것임.
    // export된 객체를 원하는 이름으로 불러 사용할 수 있다.  
    // import 할때 중괄호를 쓸 필요 없다. 
    // ***파일에 하나의 export default만 사용 가능.
    다른 파일.js 👇👇👇👇👇
    import math from './연산.js'

  • 섞어 사용
    함수들.js
    const 함수1번 = () => console.log('Welcome!!);
    export const 함수2번 = () => console.log('Nice to meet you Maeeean!?');
    export const 함수3번 = () => console.log('See you Again!!')
    export default 함수1번
    다른파일.js 👇👇👇👇👇
    import 함수1번다른이름 {함수2, 함수3} from './함수들.js'

  • * import
    연산.js
    export const add = (a, b) => a + b;
    export const minus = (a, b) => a - b;
    export const devide = (a, b) => a * b;
    다른파일.js 👇👇👇👇👇
    import * as math from './연산.js'
    // math라는 객체에 다 들어가 있다. 

  • Dynamic import
    보통은 export한 파일을 모두 import 한다. 웹사이트는 모든 코드를 다운받기에 로딩속도가 느려질 수 있다.
    이에 사용할 모듈만 import하여 사용할 수 있다.
    다른파일.js
    function 실행함수 () {
     import('./연산.js')
     .then(math => math.add(2, 4))
    }
    btn.addEventListener('click', 실행함수)
profile
개발자를 꿈꾸는 자

0개의 댓글