requireJs란

Posted by : on

Category : requirejs


require js 사용

require js : AMD 기반 스크립트 로더. 자바스크립트 파일/모듈 로더.
*AMD : 비동기적으로 스크립트를 로딩하기 위한 방법을 정의한 API를 의미.

사용목적 :
일반적으로 자바스크립트를 하나의 파일로 작성하는 경우가 많다. 그런데 코드가 점점 방대해지면 나중에 관리가 쉽지않다. 이를위해 기능이나 용도별로 여러 파일로 분할하여 사용한다.

모듈 정의와 사용

모듈을 정의하는 기본 형태는 다음과 같다.

// 모듈 정의의 기본 형태
define([ // 의존 모듈들을 나열한다. 모듈이 한 개라도 배열로 넘겨야 한다.  
    'js/util',
    'js/Ajax',
    'js/Event'
], function (util, Ajax, Event) { // 의존 모듈들은 순서대로 매개변수에 담긴다.
    // 의존 모듈들이 모두 로딩 완료되면 이 함수를 실행한다.
    // 초기화 영역
    var i = 0;

    function increase() {
        i++;
    }

    function get() {
      return i;
    }

    // 외부에 노출할 함수들만 반환한다.
    return {
        increase: increase,
        get: get
    };
});


require([  
    'js/foo'
], function (foo) {
    console.log(foo.get()); // 0
    foo.increase();
    console.log(foo.get()); // 1
});

로딩 순서가 중요하다면 아래와 같이 require를 중첩해서 사용하는 방법이 있다.

require(['js/first'], function (first) {  
    require(['js/second'], function (second) {
        //
    });    
});

About 유재석
유재석

개발자 유재석 입니다. Web Developer.

Email : jaeseok9405@gmail.com

Website : https://github.com/yoo94