32 lines
460 B
TypeScript
32 lines
460 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
|
|
};
|
|
}
|