Skip to content
Junerver Hou edited this page Sep 12, 2024 · 7 revisions

useBoolean

管理 boolean 状态的 Hook。

你可以通过解构语法,轻松的获得多个用于管理 boolean 状态的函数:

val (state, toggle, setValue, setTrue, setFalse) = useBoolean(default = true)
  • 传递给函数的值 default 是初始的默认值
  • 通过 state 直接读取 boolean 的状态值
  • toggle 函数用来切换状态
  • setValue 函数签名为 (Boolean) -> Unit,可以用来设置状态
  • setTrue 设置状态为 true
  • setFalse 设置状态为 false

useToggle

用于在两个状态值间切换的 Hook。

val (state, toggle) = useToggle("hello", "world")
val (either, toggleEither) = useToggleEither("example", Random.nextDouble())

Text(text = "current: $state")
TButton(text = "toggle") { toggle() }

Text(
    text = "either: ${
        either.fold(
            { "string: $it" },
            { "double: $it" }
        )
    }"
)
TButton(text = "toggle") { toggleEither() }

默认使用左值

Clone this wiki locally