搜索...
一个用于管理可切换(togglable)的状态的 React Hook。
如果你需要管理多个值的循环交替状态(如切换多语言、多主题等),建议使用 useCircularList。
const [value, actions] = useToggle(['value 1', 'value 2']) actions.toggle() // 切换状态 actions.setLeft() // 设置状态为左值 actions.setRight() // 设置状态为右值 actions.setState('value 1') // 设置状态为一个具体值
点击下方链接跳转 GitHub 查看源代码。
const [bool, actions] = useToggle(bool) const [value, actions] = useToggle([one, theOther])
它接受一个或两个参数:
bool:一个 boolean 值,是状态的初始值,将在 true 和 false 之间切换。
bool
boolean
true
false
one, theOther:状态切换的两个值。
one
theOther
export interface UseToggleReturnsActions<O, T> { /** * 切换状态。 */ toggle(): void /** * 设置状态为左值。 */ setLeft(): void /** * 设置状态为右值。 */ setRight(): void /** * 设置状态为一个新值。 */ setState: ReactSetState<O | T> } export type UseToggleReturns<O, T> = [O | T, UseToggleReturnsActions<O, T>]