NodeJS에서 router라든지 js파일을 import해서 사용할 수 있는데요.

오늘은 이 방법을 이용해서, routing파일을 분리하고, 

다시 require해서 로딩해 사용하는 방법에 대해서 정리해 보도록 하겠습니다.



1. NodeJS의 module


NodeJS에서는 다른 함수라든가 변수들을 다른 파일에 모듈로 분리시킬 수 있습니다.

당연한 이야기지만, 이 분리시킨 모듈들을 다시 include할 수 있구요.

더 나아가면, package해서, 유명한 NPM에 배포할 수도 있습니다.



2. module.exports


module.exports는 NodeJS에 모듈사용의 편리성을 위해서,

global하게 액세스하도록 되어있는, NodeJS에 포함된 특별한 객체입니다.


따라서, module.exports에 대입을 해주면,

NodeJS의 module시스템에 의해서, global하게 access할 수 있습니다.

(물론, access하기 위해서, 모듈을 require하는 것이 필요합니다.)


그럼 실제로, router폴더의 index.js를 module.exports에 대입해보겠습니다.


아래와 같이 변수를 대입함으로서,

router객체를 module.exports가 참조하게 됩니다.

 

>> module.exports = router;


실제, index.js파일을 보겠습니다.


가운데, ...으로 된 부분이 실제 routing을 구현한 부분이 되는데요. 

이 글에서는 생략하구요.

마지막줄의 module.exports에 router객체를 대입하므로서,

module.exports가 router객체를 참조하게 됩니다.




3. 모듈 require하기

이제, app.js에서 require해서 가져와 사용해 보겠습니다.




그리고, routes를 routing에 이용합니다.



이렇게 해서, router폴더로 분리된, index.js파일을

app.js에서 routing모듈로 사용할 수 있게 됩니다.

+ Recent posts