@vue-widget/hooks
Version:
hooks from react to vue
16 lines (15 loc) • 510 B
JavaScript
import { ref } from "vue";
import { isFunction } from "../utils";
export function useState(defaultStateValue) {
var initValue = typeof defaultStateValue === "function"
? defaultStateValue()
: defaultStateValue;
var innerValue = ref(initValue);
var triggerChange = function (newValue) {
if (isFunction(newValue))
innerValue.value = newValue(innerValue.value);
else
innerValue.value = newValue;
};
return [innerValue, triggerChange];
}