diff --git a/packages/extension-lazyref/src/index.ts b/packages/extension-lazyref/src/index.ts index 18e6aef..343ecdf 100644 --- a/packages/extension-lazyref/src/index.ts +++ b/packages/extension-lazyref/src/index.ts @@ -12,9 +12,10 @@ export const LazyRefExtension = ReffuseExtension.make(() => ({ const initialState = this.useMemo(() => ref, [], { doNotReExecuteOnRuntimeOrContextChange: true }) const [reactStateValue, setReactStateValue] = React.useState(initialState) - this.useFork(() => Stream.runForEach(ref.changes, v => Effect.sync(() => - setReactStateValue(v) - )), [ref]) + this.useFork(() => Stream.runForEach( + Stream.changes(ref.changes), + v => Effect.sync(() => setReactStateValue(v)), + ), [ref]) const setValue = this.useCallbackSync((setStateAction: React.SetStateAction) => LazyRef.update(ref, prevState => diff --git a/packages/reffuse/src/ReffuseHelpers.ts b/packages/reffuse/src/ReffuseHelpers.ts index 2f4f449..60ce35d 100644 --- a/packages/reffuse/src/ReffuseHelpers.ts +++ b/packages/reffuse/src/ReffuseHelpers.ts @@ -395,9 +395,10 @@ export abstract class ReffuseHelpers { const initialState = this.useMemo(() => ref, [], { doNotReExecuteOnRuntimeOrContextChange: true }) const [reactStateValue, setReactStateValue] = React.useState(initialState) - this.useFork(() => Stream.runForEach(ref.changes, v => Effect.sync(() => - setReactStateValue(v) - )), [ref]) + this.useFork(() => Stream.runForEach( + Stream.changes(ref.changes), + v => Effect.sync(() => setReactStateValue(v)), + ), [ref]) const setValue = this.useCallbackSync((setStateAction: React.SetStateAction) => Ref.update(ref, prevState =>