@preact-signals/safe-react
Version:
Manage state with style in React
23 lines (20 loc) • 634 B
JavaScript
import { signal, computed, effect } from '@preact/signals-core';
import { useMemo, useRef, useEffect } from 'react';
const Empty = [];
function useSignal(value) {
return useMemo(() => signal(value), Empty);
}
function useComputed(compute) {
const $compute = useRef(compute);
$compute.current = compute;
return useMemo(() => computed(() => $compute.current()), Empty);
}
function useSignalEffect(cb) {
const callback = useRef(cb);
callback.current = cb;
useEffect(() => {
return effect(() => callback.current());
}, Empty);
}
export { useComputed, useSignal, useSignalEffect };
//# sourceMappingURL=hooks.mjs.map