React状态管理之——Jotai

284 阅读1分钟

1.认识Jotai

官网:jotai.org/

Jotai 采用原子方法进行全局 React 状态管理。

atom Jotai中的全局变量

原始原子可以是任何类型:布尔值、数字、字符串、对象、数组、集合、映射等。

2.创建及使用

1)创建需要存放在全局状态管理的字段

⚠️注意:创建字段名称一般用Atom结尾,例如 export const inputValueAtom = atom ( '' ) ;

export const inputValueAtom = atom<string>('');
2)在需要用到全局变量的地方,通过useAtom/useAtomValue/useSetAtom获取

⚠️注意:

a. 若既读又写atom值时

则用组合的 useAtom 钩子,类似useState的写法(useAtom用法与useState类似,useAtom为全局状态变量,而useState非全局)例如

const [inputValue, setInputValue] = useAtom(inputValueAtom);
b. 若只读取atom值时

则使用单独的useAtomValue 钩子来优化重新渲染,例如

const inputVal = useAtomValue(inputValueAtom)
c. 若只写入atom值时

则使用单独的useSetAtom钩子来优化重新渲染

const setInputVal = useSetAtom(inputValueAtom)