[Typescript] promise return void
in Study on typescript
이번에 typescript + react로 통신하는 프로젝트를 진행했는데, axios를 활용해 통신을 하는 과정에서 response type에 void가 포함되어 있는 문제가 발생하는 것이다…
그래서 문제를 파악해보니
axios({
url: `https://storage-fe.toss.im${path}`,
method,
data: parameter && createBody(method, contentType, parameter),
}).then<FetchResponse<200, S> | R>(async (res) => {
if (!res.data) {
throw res;
}
const header = { status: res.status };
const body = res.data;
return {
...header,
...body,
};
});
.catch(e => {
console.log(e) // 여기가 문제
});
catch하는 부분에서 console.log()를 사용해서 벌어진 일이였다.. 너무다 당연한 문제였다. 이를 해결하려면
axios({
url: `https://storage-fe.toss.im${path}`,
method,
data: parameter && createBody(method, contentType, parameter),
}).then<FetchResponse<200, S> | R>(async (res) => {
if (!res.data) {
throw res;
}
const header = { status: res.status };
const body = res.data;
return {
...header,
...body,
};
});
.catch(e => {
throw e // 요렇게 바꿔주자
});