inflearn logo
강의

講義

知識共有

実務中心! FE入門者のためのReact

12-2. Recoilとは?

12-2. Recoil -> Jotai 변환 코드 공유합니다.

210

kuneosu

投稿した質問数 2

4

Recoil 지원 중단 문제로 강의에 나온 Recoil 관련 내용을 Jotai 라이브러리로 대체했습니다.

여러 수강생 분들이 같은 문제를 겪는 듯해서 제가 사용한 코드를 공유합니다.

  1. recoil 제거 & jotai 설치

npm uninstall recoil
npm install jotai
  1. atom.js 변환 코드


    : jotai 의 atom 에선 key 값이 없습니다.

import {atom} from "jotai";

const testState = atom(['a', 'b', 'c', 'd']);

export default testState;
  1. testWithComma.js


    : 마찬가지로 키 값이 없으며, 좀 더 단순하게 사용 가능합니다.

import {atom} from "jotai";

import testState from "./atom.js";

const testWithComma = atom((get) => {
    const abcdArr = get(testState)
    return abcdArr.join(',');
})

export default testWithComma;
  1. CompletionPage.jsx
    : useRecoilValue -> useAtomValue 로 변경하시면 됩니다.

const testValue = useAtomValue(testWithComma);

 

Jotai 와 Zustand 중 고민하다가 Jotai가 Recoil과 더 유사하다고 하여 우선 Jotai로 학습 진행했습니다. 강의 수강에 참고가 되길 바랍니다.

react redux node.js sass swr

回答 1

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다.

김권수님이 제공해주신 Recoil을 Jotai로 변환한 코드는 다른 수강생분들에게 큰 도움이 될 것 같습니다. Jotai는 Recoil과 유사하게 동작하기 때문에 전환하기에 적합한 선택일 수 있습니다.

Recoil에서 Jotai로 변환할 때의 주요 포인트는 Jotai에서는 atom을 사용할 때 key 값이 필요 없다는 점입니다. 그리고 useRecoilValueuseAtomValue로 변경하면 됩니다. 이러한 간단한 수정은 코드의 복잡성을 줄이고 쉽게 따라 할 수 있도록 도와줍니다.

계속해서 Jotai를 사용하여 좋은 학습 경험이 되길 바랍니다. 질문이 있으시면 언제든지 말씀해 주세요. 추가적인 정보는 아래에서 확인할 수 있습니다:
- Jotai Documentation

라우터 궁금사항

0

36

1

자료 Git Source 주소 ??

0

64

1

교육자료 소스 바로 실행시..

0

78

1

교육자료 소스 바로 실행시..

0

58

1

13-1, 13-2 질문

0

121

1

recoil error 나시는 분들 보세요

3

124

1

어려워요 뭔소리죠 대체

3

313

1

사진이 잘 안보여요.

0

155

1

반복문 사용법은 안알려주고 주의사항만 알려주시는거군요

1

242

0

hooks recoil불러오는 과정에서 src내부에 있는 파일이 안불러와집니다

0

120

1

제발 코드샌드박스 링크 좀 달아주세요....

2

526

2

App.js > QuestionBox > answers ={answers[step]}, QuestionBox.js > answer

0

141

0

4.2 React 렌더링 과정 에서 왜 컴포넌트가 두 번씩 호출될까요?

0

174

1

useEffect 관련 질문드립니다.

0

136

0

jotai로 변경했을 때 코드

0

428

3

리코일이 업데이트가 안된지 오래됐다고하네요

3

459

1

학습 링크

0

360

1

12-2 질문

0

658

3

5-1 학습링크

0

269

1

7-5. 메모 삭제 기능에 문제가 있습니다.

1

238

0

실습링크

0

323

1

2-6 구구단 배열 넣어서 출력시 질문

0

145

1

[2-1] 강의링크 메모용

3

921

1

[17-3. Redux로 데이터 관리]에서 Store에 슬라이스 리듀서 추가하기 질문합니다.

0

195

1