에러처리 미들웨어 타입 에러
질문1)
app.use((err, req, res, next) => {
res.locals.message = err.message;
res.locals.error = process.env.NODE_ENV !== "production" ? err : {};
res.status(err.status || 500);
res.render("error");
});이 부분에서 err, req, res, next 매개변수에 각각 "매개 변수에는 암시적으로 'any' 형식이 포함됩니다.ts(7006)" 에러가 떠서
const errorHandler: ErrorRequestHandler = (err, req, res, next) => {
console.error(err);
res.locals.message = err.message;
res.locals.error = process.env.NODE_ENV !== 'production' ? err : {};
res.status(err.status || 500);
res.render('error');
};
app.use(errorHandler);이런식으로 타입을 달아줬는데 깃허브에선 errorHandler 분리까지만 되어있고 따로 타입을 달아놓지 않았더라고요. 이건 다른 방법으로 처리하셨나요?
질문2) @types/express 설치했는데 왜 해당 에러처리 미들웨어에서만 타입 적용이 되지 않은 것이죠?
답변 1
1
타입을 달아놓는게 맞습니다.
app.use에 req.res.next나 err.req.res.next 둘 다를 넣을 수 있어서 익스프레스는 자체적으로 둘 중에 무엇인지 구별할 수 없으므로 @types/express로는 안 되고 직접 타입을 정해줘야 합니다.
깃헙 질문
0
93
2
강의 1-1 수업노트의 로드맵 링크가 작동하지 않습니다.
0
99
1
aws - lightsail 이용 관련
0
82
1
4강 http 서버 만들때 ESM방식으로 해도 될까요?
0
98
2
모듈 사용 시 단점이 있나요?
0
101
1
node.js 버전 및 typescript 적용 문의
0
104
2
12.7. 방장기능(강퇴) 질문드립니다.
0
89
2
12.7 socket.js코드 그대로 뱃겨서 했는데, socket.request.session.color가안나오네요
0
77
1
12.7 코드 그대로 뱃겨서 햇는데 스샷같이 오류가뜹니다.
0
87
2
12.7.1스스로 해보기 질문되나요
0
102
3
시퀄라이즈 실습하기 질문드립니다.
0
221
9
<7-5. 시퀄라이즈 사용하기>수업 질문 드립니다.
0
110
2
크롬에서 user id를 인풋에 입력하고 등록하면 404 에러처리 페이지가 뜹니다.
0
127
2
구매 결제관련 질문입니다 !
0
131
1
다수의 supertest 가 실행될 때 force:true로 인한 DB 초기화 문제
0
143
2
node 설치 방법이 전혀다르게 바뀐것 같습니다.
0
161
2
12강 깃허브에 있는 12.7 chat.html 복붙했는데 css오류
0
130
2
무료/프리미엄 동시 소유 시 질문
0
121
1
비주얼 스튜디오 코드로 계속 진행해도 괜찮을까요?
0
149
2
10강 cors에러 localhost:4000으로 접속했을때 에러
1
166
2
webstorm 해결할 수 없는 변수 문제
0
160
2
혹시 몽고DB 쓸거면 MySQL 강의 스킵해도 되나요?
0
150
2
LightSail 실행 중 오류 질문드립니다!
0
214
2
RedisStore 사용법 질문
0
142
2





