axios@0.23에서 타이핑이 강화되었습니다. 따라서
import axios from 'axios';
const fetcher = <Data>(url: string) =>
axios.get<Data>(url, { withCredentials: true }).then((response) => response.data);
export default fetcher;
이렇게 해야만 fetcher 부분 관련한 에러가 발생하지 않습니다. <Data>라는 제너릭을 넣는 부분이 추가되었는데요.
이 부분이 있어야 Promise<unknown>이 Promise<Data>가 되어 에러가 발생하지 않습니다.
또한 SWR devtools 도 사용 방법이 바뀌어서(swr 1버전 사용자분들만 해당)
{process.env.NODE_ENV === 'production' ? (
<App />
) : (
<SWRDevtools>
<App />
</SWRDevtools>
)}
이렇게 넣으셔야 합니다.
깃헙 front 폴더에 소스 올려두었습니다.
https://github.com/ZeroCho/sleact/tree/master/front