RecoilからJotaiへの移行
Recoil死す
https://github.com/facebookexperimental/Recoil/issues/1495
Recoilのメインの開発者がMetaでレイオフされてたっぽいですね😿
https://github.com/facebookexperimental/Recoil/issues/2318
このissueでは、Jotaiがいいんじゃねと言われています
個人的に、Reduxはちょっと面倒くさいので同意見です
Recoilの代替え
状態管理ライブラリには大きく分けて「Storeベース」と 「Atomベース」があります。 RecoilはAtomベースです。
Storeベースは、アプリケーション全体の状態を一元的に管理するための中央ストアを持つのに対し、Atomベースは、複数の小さな状態単位(Atom)を持ち、それぞれのAtomが独立して管理されます。
以下のサイトに詳しく記載されています。
https://www.ecomottblog.com/?p=12768
RecoilからJotaiへの移行方法
ここからが本題
Jotaiのインストール
npm install jotai
# or
yarn add jotai
atomの書き換え
import
をRecoilのatom
からJotaiのatom
にする。
Jotai におけるグローバルステートは Atom で管理するので、○○State
ではなく ○○Atom
とするのが流儀っぽい。
key
などの書き換えなど、けっこう面倒くさい。
// Recoil
import { atom } from 'recoil';
const countState = atom({
key: 'countState',
default: 0
});
// Jotai
import { atom } from 'jotai';
const countState = atom(0);