32 lines
454 B
TypeScript
32 lines
454 B
TypeScript
import { ref } from 'vue'
|
|
|
|
/**
|
|
* Boolean
|
|
*
|
|
* @param initValue Init value
|
|
*/
|
|
export default function useBoolean(initValue = false) {
|
|
const bool = ref(initValue)
|
|
|
|
function setBool(value: boolean) {
|
|
bool.value = value
|
|
}
|
|
function setTrue() {
|
|
setBool(true)
|
|
}
|
|
function setFalse() {
|
|
setBool(false)
|
|
}
|
|
function toggle() {
|
|
setBool(!bool.value)
|
|
}
|
|
|
|
return {
|
|
bool,
|
|
setBool,
|
|
setTrue,
|
|
setFalse,
|
|
toggle,
|
|
}
|
|
}
|