// repository
{
...
... 중략...
.then((data) => {
const [schedule, number] = data;
const newSchedule = schedule.map((value) => {
return this.transformSharedMembers(value);
});
// 튜플 데이터의 리턴타입을 어떻게 지정 해주어야할것인가?
return [newSchedule, number];
});
private transformSharedMembers(data: ScheduleEntity) {
const { sharedMembers, ...rest } = data;
const newSharedMembers = sharedMembers.map((item) => {
return {
...item.sharedMember,
};
});
return {
...rest,
sharedMembers: newSharedMembers,
};
}
...
}
리턴 받아야 될 튜플 타입이 [ScheduleGetListResDto[], number] 이거라고 가정 했을때
타입스크립트에서 return 구문에서 직접 타입을 지정 할 수 없다.
방법1 결과값을 변수에 담고 타입체커가 타입 추론을 하게 만들기
.then((data) => {
const [schedule, number] = data;
const newSchedule = schedule.map((value) => {
return this.transformSharedMembers(value);
});
const result: [ScheduleGetListResDto[], number] = [newSchedule, number];
return result;
});
방법2 then 메서드에 리턴 타입 지정 해주기
.then((data): [ScheduleGetListResDto[], number] => {
const [schedule, number] = data;
const newSchedule = schedule.map((value) => {
return this.transformSharedMembers(value);
});
return [newSchedule, number];
});