https://opentutorials.org/course/3370
생활코딩님의 Express.js강의를 참고하였습니다.
1.파일 분리
동일한 세부주소를 가진 라우트 핸들러들을 분리한다.
2.express.Router()
Express에서 서브 라우터 객체를 생성하는 코드이다.
이 라우터 객체를 사용하면 모듈 단위로 라우트를 관리할 수 있고, 이를 통해 어플리케이션의 라우트를 보다 구조화하고, 유지보수하기 쉽게 만듭니다.
var express = require('express');
var router = express.Router();
3. module.exports = router;
router 객체를 외부로 내보내기 위한 코드
다른 파일에서 router 객체를 가져와 사용할 수 있게 됩니다.
module.exports = router;
var express = require('express');
var router = express.Router();
var template = require('../lib/template.js');
router.get('/', function(request, response) {
var title = 'Welcome';
var description = 'Hello, Node.js';
var list = template.list(request.list);
var html = template.HTML(title, list,
`
<h2>${title}</h2>${description}
<img src="/img/cat.jpg" style="width:300px; display:block; margin-top:10px;">
`,
`<a href="/topic/create">create</a>`
);
response.send(html);
});
module.exports = router;
4.app.js 에서 사용
분리한 routes 들을 export해서 app.js 에서 사용한다.
모듈화된 라우트 핸들러를 사용하기 위해서는 require로 router 변수를 받고
app.use 를 통해 처리하였다.
var indexRouter = require('./routes/index');
var topicRouter = require('./routes/topic');
app.use('/', indexRouter);
app.use('/topic', topicRouter);
'BackEnd > Express.js' 카테고리의 다른 글
[Express.js] Express Generator (0) | 2024.09.11 |
---|---|
[Express.js] 기본 프로젝트 폴더 구조 (0) | 2024.09.10 |
[Express.js] 에러처리 (0) | 2024.09.10 |