하나의 메인 함수를 exports 할때, module.exports 를 사용했다.
ex) module.exports = router;
파일 안에 여러개의 함수를 exports 하고 싶을때 하나씩 exports 를 써서 export 했다.
ex) exports.diaryValidation = diaryValidation
exports.postUserDiary = postUserDiary
exports.getUserDiary = getUserDiary
...
1. "사실, 여러개의 각각 export 도 module.exports 를 사용 할 수 있고 이게 훨씬 깔끔하다."
module.exports = {
diaryValidation:diaryValidation,
postUserDiary:postUserDiary,
getUserDiary:getUserDiary
}
2. "심지어, 모던 자바스크립트는 저 : 도 지울 수 있다."
module.exports = {
diaryValidation,
postUserDiary,
getUserDiary
}
3. 이렇게 export 한 함수들은, 필요한 곳에서 받아 사용한다.
< routes / diary-routes.js >
const express = require("express");
const diaryContoller = require("../controllers/diary-controller"); // 받아서
const router = express.Router();
router.get("/:userEmail", diaryContoller.getUserDiary); // 안에 있는 함수를 사용
router.post("/insert", diaryContoller.postUserDiary); // 안에 있는 함수를 사용
module.exports = router;
4. 파일 자체를 받아 그 안의 함수를 사용하는 것이 아닌, 함수를 직접 뽑아 쓰는 것도 가능하다.
< routes / diary-routes.js >
const express = require("express");
const {getUserDiary, postUserDiary } = require("../controllers/diary-controller"); // 직접 뽑아 사용
const router = express.Router();
router.get("/:userEmail", getUserDiary); // 직접 뽑아 사용
router.post("/insert", postUserDiary); // 직접 뽑아 사용
module.exports = router;
'Node.js(Express)' 카테고리의 다른 글
9. DB 연결 ( mongoDB ), 환경변수의 사용 Feat. POSTMAN,dotenv (0) | 2023.02.18 |
---|---|
8. bodyparser 의 파싱과, 컨트롤러에서 GET 과 POST 에 대한 응답로직 (0) | 2023.02.18 |
6. Validation 아웃소싱 (0) | 2023.02.18 |
5. MVC 패턴, Contoroller 의 사용 // 여러개의 미들웨어 (0) | 2023.02.18 |
4. 잘못된 요청 처리하기, 잘못된 경로로 온 요청 처리하기 (0) | 2023.02.18 |
댓글