board의 데이터들
export interface BoardData {
content: string
date: string
level: number
status: number
title: string
type: number
userId: number
views: number
id?: number
nickname: string
email: string
reviews?: number
}
게시글 리스트와 게시글 디테일을 가지고 오는 useHooks를 설정해줌
export const getBoards = () => {
return axios
.get(`${process.env.BASE_URL}boards`)
.then((res) => res.data)
}
export const getBoard = (id: number | null) => {
return axios
.get(`${process.env.BASE_URL}boards/${id}`)
.then((res) => res.data)
}
useQuery 사용!!
ex) isLoading -> 요청 보냈을 때 로딩중인상태
isError -> 에러가 발생한 상태
data -> 내가 필요한 데이터
refetch -> 다시 axios보냄
error -> 에러종류
cf) 만약 변수가 필요하다면
cf) 변수가 필요없다면
ps) 변수가 필요하면 변수도 추가해줘야함
const {isLoading, data, ... } = useQuery<BoardData>(['freeboard']),getBoards)
const {
isLoading,
data: article,
isError,
error,
refetch,
} = useQuery<BoardData>(['freeboard', id], () => getBoard(id))드를 입력하세요