React context 코드 단순화하기 :: 리팩토링
웹 (WEB)/공부 2021. 9. 21. 14:11

문제 상황 React context 사용 시 기존 코드 구성이 context 내부 요소가 늘어날 수록 복잡해져서 리팩토링하려 한다. 기존 구현 // 구성 const UserContext = createContext({}); const SignInContext = createContextvoid>(()=>{}); export const UserContextProvider = ({ children }) => { const [user, setUser] = useState(); const signIn = () => {}; return ( {children} ); } export function useUserState() { const context = useContext(UserContext); return c..

React-query :: api fetch 시 사용하는 라이브러리
웹 (WEB)/공부 2021. 7. 10. 12:38

React-query : fetch, cache, synchronize, update(for server state)에 사용되는 라이브러리이다. 공식사이트 React Query Hooks for fetching, caching and updating asynchronous data in React react-query.tanstack.com 배경 server state 사용 시 발생할 수 있는 문제점은 다음과 같다. caching deduping(데이터 중복 제거) update "out of date" data / know when is it reflecting updates data pagination optimization, lazy loading data memory management, garba..

React-query :: Query
웹 (WEB)/공부 2021. 7. 10. 12:35

기본 사용 const info = useQuery('unique_key', fetchData); // fetchData는 promise 반환 unique한 key로 정의하며, key에 묶이는 데이터는 비동기 데이터이다. useQuery가 반환하는 result는 비동기 데이터의 상태를 담고 있다. 상태 loading isLoading이 true가 된다. error isError가 true가 되며, error에 에러 정보가 담긴다. success isSuccess가 true가 되며, data에 정보가 담긴다. idle 사용 예제 const { isLoading, isError, data, error } = useQuery('key', fetchData); // const { status, data, erro..