Skip to content

Commit 96ed5e0

Browse files
committed
Fix failing test
1 parent b69bb5d commit 96ed5e0

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

packages/react-reconciler/src/ReactFiberHooks.new.js

+6-2
Original file line numberDiff line numberDiff line change
@@ -1947,17 +1947,21 @@ function wrapEventFunction<Args, Return, F: (...Array<Args>) => Return>(
19471947
function mountEvent<Args, Return, F: (...Array<Args>) => Return>(
19481948
callback: F,
19491949
): EventFunctionWrapper<Args, Return, F> {
1950+
const hook = mountWorkInProgressHook();
19501951
const eventFn = wrapEventFunction(callback);
1952+
hook.memoizedState = eventFn;
19511953
useEventImpl(eventFn, callback);
19521954
return eventFn;
19531955
}
19541956

19551957
function updateEvent<Args, Return, F: (...Array<Args>) => Return>(
19561958
callback: F,
19571959
): EventFunctionWrapper<Args, Return, F> {
1958-
const eventFn = wrapEventFunction(callback);
1960+
const hook = updateWorkInProgressHook();
1961+
const eventFn = hook.memoizedState;
19591962
useEventImpl(eventFn, callback);
1960-
return eventFn;
1963+
// Always return a new function
1964+
return wrapEventFunction(callback);
19611965
}
19621966

19631967
function mountInsertionEffect(

packages/react-reconciler/src/ReactFiberHooks.old.js

+6-2
Original file line numberDiff line numberDiff line change
@@ -1947,17 +1947,21 @@ function wrapEventFunction<Args, Return, F: (...Array<Args>) => Return>(
19471947
function mountEvent<Args, Return, F: (...Array<Args>) => Return>(
19481948
callback: F,
19491949
): EventFunctionWrapper<Args, Return, F> {
1950+
const hook = mountWorkInProgressHook();
19501951
const eventFn = wrapEventFunction(callback);
1952+
hook.memoizedState = eventFn;
19511953
useEventImpl(eventFn, callback);
19521954
return eventFn;
19531955
}
19541956

19551957
function updateEvent<Args, Return, F: (...Array<Args>) => Return>(
19561958
callback: F,
19571959
): EventFunctionWrapper<Args, Return, F> {
1958-
const eventFn = wrapEventFunction(callback);
1960+
const hook = updateWorkInProgressHook();
1961+
const eventFn = hook.memoizedState;
19591962
useEventImpl(eventFn, callback);
1960-
return eventFn;
1963+
// Always return a new function
1964+
return wrapEventFunction(callback);
19611965
}
19621966

19631967
function mountInsertionEffect(

0 commit comments

Comments
 (0)