티스토리 뷰
export const getMusicInfoData = async (keyword: string) => {
const { data } = await supabase
.from("musicInfo")
.select("musicId, musicTitle, artist, thumbnail, release, musicSource")
.or(`musicTitle.ilike.%${keyword}%,artist.ilike.%${keyword}%`)
.order("musicTitle", { ascending: false });
return { data };
};
export type MusicInfoDataType = Awaited<ReturnType<typeof getMusicInfoData>>["data"];
음악 검색 시 수파베이스에서 받아온 음악 정보를 유틸타입으로 만드는 과정
- type CommunityDataType = Awaited<returntype>["data"];</returntype
- 프로미스의 제네릭을 없애주고 실제 함수의 반환값 타입만 반환한다(비동기 함수의 결괏값만 받겠다는 것)
- ReturnType - 반환값은 이 함수 반환값의 타입이다
- 타입오브로 겟데이터 타입을 추론
- ["data"] 키값 << 이 키에 맞는 데이터 타입을 지정하는 것
- 함수의 반환값 자체를 타입으로 만듦
'TIL > 최종프로젝트' 카테고리의 다른 글
[최종프로젝트] 리액트 쿼리로 회원 플레이 리스트 가져오기 (0) | 2024.04.07 |
---|---|
[최종프로젝트] 쥬스탄드 (Zustand) (0) | 2024.04.05 |
[최종프로젝트] 수파베이스 조인 (Join) (0) | 2024.04.02 |
[최종프로젝트] 커스텀인풋 (UseInput) (0) | 2024.04.02 |
[최종프로젝트] 수파베이스 타입다운로드 (0) | 2024.04.02 |