[React] Recoil 사용 해보기
2022. 6. 6. 18:44
공부/JavaScript
Recoil을 사용하면 state를 다른 컴포넌트에 prop을 통해 계속 내려줄 필요 없이, atom을 사용해서 여러 컴포넌트에서 쉽게 접근할 수 있다! 사용하기 위해선 설치를 먼저 해주어야 한다. npm i recoil 그리고 atoms.ts 파일을 하나 만들어 준 뒤 내부에 아래와 같이 작성했다. import { atom } from "recoil"; //import recoil export const isDarkAtom = atom({ key: "isDark", default: false, }); 그리고 index.tsx에서 App 컴포넌트를 감싸준다. import { RecoilRoot } from "recoil"; //import RecoilRoot root.render( //recoil ); ..
[React] React-Query
2022. 6. 2. 22:27
공부/JavaScript
React-query는 fetcher 함수를 만들수 있게 해준다. export function fetchCoins(){ return fetch(`${BASE_URL}/coins`).then(response=>response.json()) } 기본적으로 fetcher 함수와 연결시켜서 isLoading과 같은 함수가 불렸는지 아닌지를 알려준다. 그리고 함수가 끝났을 때는 결과 값을 data에 넣어준다. const { isLoading, data }=useQuery("allCoins", fetchCoins) 그리고 여러개의 query를 사용하게 되어 key값을 겹치지 않게 하고 싶고, argument가 필요한 경우에는 아래와 같이 작성한다. const {isLoading: infoLoading, data:i..
[TypeScript] interface
2022. 6. 1. 01:17
공부/JavaScript
타입스크립트에서 type을 지정해주는 방식 중 하나인 interface를 배웠다. object의 shape을 알려줄 수 있다고 한다! interface PersonProp { name:string; age:number; } function Person({name,age}:PersonProp){ return( {name}, {age} ) } 이렇게 interface 안에 각 prop의 type을 지정해주고 지정한 interface 이름인 PersonProp을 콜론으로 붙여주면 된다!
[TypeScript] DefinitelyTyped
2022. 6. 1. 01:09
공부/JavaScript
TS를 사용하게 되면 기존에 사용하던 라이브러리들이 정상작동 하지 않을 가능성이 높다. 간단하게 계속 사용할 수 있는데 이 때 접근하게 되는 것이 DefinitelyTyped이다. 내가 사용하려는 styled-components의 경우에도 자바스크립트로 만들어졌기 때문에 타입스크립트를 사용하게 되면 오류가 발생한다. 이를 해결하기 위해서 아래 커맨드를 순서대로 입력하여 해결했다. npm i --save-dev @types/styled-components npm i styled-components @types/라이브러리이름 을 입력하면 되는데, 아래 레포지토리에 등록된 라이브러리가 현재 포스팅 시점에 7000개가 넘는다! GitHub - DefinitelyTyped/DefinitelyTyped: The r..