Skip to content

Commit b4ad8e9

Browse files
author
Sunil Pai
authored
rename useImperativeMethods -> useImperativeHandle (#14565)
1 parent ab03e3d commit b4ad8e9

File tree

9 files changed

+32
-32
lines changed

9 files changed

+32
-32
lines changed

packages/react-debug-tools/src/ReactDebugHooks.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ function getPrimitiveStackCache(): Map<string, Array<any>> {
5454
Dispatcher.useRef(null);
5555
Dispatcher.useLayoutEffect(() => {});
5656
Dispatcher.useEffect(() => {});
57-
Dispatcher.useImperativeMethods(undefined, () => null);
57+
Dispatcher.useImperativeHandle(undefined, () => null);
5858
Dispatcher.useCallback(() => {});
5959
Dispatcher.useMemo(() => null);
6060
} finally {
@@ -159,7 +159,7 @@ function useEffect(
159159
hookLog.push({primitive: 'Effect', stackError: new Error(), value: create});
160160
}
161161

162-
function useImperativeMethods<T>(
162+
function useImperativeHandle<T>(
163163
ref: {current: T | null} | ((inst: T | null) => mixed) | null | void,
164164
create: () => T,
165165
inputs: Array<mixed> | void | null,
@@ -174,7 +174,7 @@ function useImperativeMethods<T>(
174174
instance = ref.current;
175175
}
176176
hookLog.push({
177-
primitive: 'ImperativeMethods',
177+
primitive: 'ImperativeHandle',
178178
stackError: new Error(),
179179
value: instance,
180180
});
@@ -205,7 +205,7 @@ const Dispatcher = {
205205
useCallback,
206206
useContext,
207207
useEffect,
208-
useImperativeMethods,
208+
useImperativeHandle,
209209
useLayoutEffect,
210210
useMemo,
211211
useReducer,

packages/react-debug-tools/src/__tests__/ReactHooksInspectionIntegration-test.internal.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ describe('ReactHooksInspectionIntergration', () => {
8282
React.useLayoutEffect(effect);
8383
React.useEffect(effect);
8484

85-
React.useImperativeMethods(
85+
React.useImperativeHandle(
8686
outsideRef,
8787
() => {
8888
// Return a function so that jest treats them as non-equal.
@@ -118,7 +118,7 @@ describe('ReactHooksInspectionIntergration', () => {
118118
{name: 'Ref', value: 'c', subHooks: []},
119119
{name: 'LayoutEffect', value: effect, subHooks: []},
120120
{name: 'Effect', value: effect, subHooks: []},
121-
{name: 'ImperativeMethods', value: outsideRef.current, subHooks: []},
121+
{name: 'ImperativeHandle', value: outsideRef.current, subHooks: []},
122122
{name: 'Memo', value: 'ab', subHooks: []},
123123
{name: 'Callback', value: updateStates, subHooks: []},
124124
]);
@@ -134,7 +134,7 @@ describe('ReactHooksInspectionIntergration', () => {
134134
{name: 'Ref', value: 'C', subHooks: []},
135135
{name: 'LayoutEffect', value: effect, subHooks: []},
136136
{name: 'Effect', value: effect, subHooks: []},
137-
{name: 'ImperativeMethods', value: outsideRef.current, subHooks: []},
137+
{name: 'ImperativeHandle', value: outsideRef.current, subHooks: []},
138138
{name: 'Memo', value: 'Ab', subHooks: []},
139139
{name: 'Callback', value: updateStates, subHooks: []},
140140
]);
@@ -165,7 +165,7 @@ describe('ReactHooksInspectionIntergration', () => {
165165
it('should inspect forwardRef', () => {
166166
let obj = function() {};
167167
let Foo = React.forwardRef(function(props, ref) {
168-
React.useImperativeMethods(ref, () => obj);
168+
React.useImperativeHandle(ref, () => obj);
169169
return <div />;
170170
});
171171
let ref = React.createRef();
@@ -174,7 +174,7 @@ describe('ReactHooksInspectionIntergration', () => {
174174
let childFiber = renderer.root.findByType(Foo)._currentFiber();
175175
let tree = ReactDebugTools.inspectHooksOfFiber(childFiber);
176176
expect(tree).toEqual([
177-
{name: 'ImperativeMethods', value: obj, subHooks: []},
177+
{name: 'ImperativeHandle', value: obj, subHooks: []},
178178
]);
179179
});
180180

packages/react-dom/src/__tests__/ReactDOMServerIntegrationHooks-test.internal.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ let useContext;
2424
let useCallback;
2525
let useMemo;
2626
let useRef;
27-
let useImperativeMethods;
27+
let useImperativeHandle;
2828
let useLayoutEffect;
2929
let forwardRef;
3030
let yieldedValues;
@@ -48,7 +48,7 @@ function initModules() {
4848
useCallback = React.useCallback;
4949
useMemo = React.useMemo;
5050
useRef = React.useRef;
51-
useImperativeMethods = React.useImperativeMethods;
51+
useImperativeHandle = React.useImperativeHandle;
5252
useLayoutEffect = React.useLayoutEffect;
5353
forwardRef = React.forwardRef;
5454

@@ -529,10 +529,10 @@ describe('ReactDOMServerHooks', () => {
529529
});
530530
});
531531

532-
describe('useImperativeMethods', () => {
532+
describe('useImperativeHandle', () => {
533533
it('should not be invoked on the server', async () => {
534534
function Counter(props, ref) {
535-
useImperativeMethods(ref, () => {
535+
useImperativeHandle(ref, () => {
536536
throw new Error('should not be invoked');
537537
});
538538
return <Text text={props.label + ': ' + ref.current} />;

packages/react-dom/src/server/ReactPartialRendererHooks.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -347,8 +347,8 @@ export const Dispatcher = {
347347
useLayoutEffect,
348348
// Callbacks are passed as they are in the server environment.
349349
useCallback: identity,
350-
// useImperativeMethods is not run in the server environment
351-
useImperativeMethods: noop,
350+
// useImperativeHandle is not run in the server environment
351+
useImperativeHandle: noop,
352352
// Effects are not run in the server environment.
353353
useEffect: noop,
354354
};

packages/react-reconciler/src/ReactFiberDispatcher.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import {
1212
useCallback,
1313
useContext,
1414
useEffect,
15-
useImperativeMethods,
15+
useImperativeHandle,
1616
useLayoutEffect,
1717
useMemo,
1818
useReducer,
@@ -25,7 +25,7 @@ export const Dispatcher = {
2525
useCallback,
2626
useContext,
2727
useEffect,
28-
useImperativeMethods,
28+
useImperativeHandle,
2929
useLayoutEffect,
3030
useMemo,
3131
useReducer,

packages/react-reconciler/src/ReactFiberHooks.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -557,7 +557,7 @@ function useEffectImpl(fiberEffectTag, hookEffectTag, create, inputs): void {
557557
);
558558
}
559559

560-
export function useImperativeMethods<T>(
560+
export function useImperativeHandle<T>(
561561
ref: {current: T | null} | ((inst: T | null) => mixed) | null | void,
562562
create: () => T,
563563
inputs: Array<mixed> | void | null,

packages/react-reconciler/src/__tests__/ReactHooksWithNoopRenderer-test.internal.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ let useLayoutEffect;
2323
let useCallback;
2424
let useMemo;
2525
let useRef;
26-
let useImperativeMethods;
26+
let useImperativeHandle;
2727
let forwardRef;
2828
let flushPassiveEffects;
2929
let memo;
@@ -71,7 +71,7 @@ describe('ReactHooksWithNoopRenderer', () => {
7171
useCallback = React.useCallback;
7272
useMemo = React.useMemo;
7373
useRef = React.useRef;
74-
useImperativeMethods = React.useImperativeMethods;
74+
useImperativeHandle = React.useImperativeHandle;
7575
forwardRef = React.forwardRef;
7676
memo = React.memo;
7777
});
@@ -88,7 +88,7 @@ describe('ReactHooksWithNoopRenderer', () => {
8888
it('resumes after an interruption', () => {
8989
function Counter(props, ref) {
9090
const [count, updateCount] = useState(0);
91-
useImperativeMethods(ref, () => ({updateCount}));
91+
useImperativeHandle(ref, () => ({updateCount}));
9292
return <Text text={props.label + ': ' + count} />;
9393
}
9494
Counter = forwardRef(Counter);
@@ -172,7 +172,7 @@ describe('ReactHooksWithNoopRenderer', () => {
172172
it('simple mount and update', () => {
173173
function Counter(props, ref) {
174174
const [count, updateCount] = useState(0);
175-
useImperativeMethods(ref, () => ({updateCount}));
175+
useImperativeHandle(ref, () => ({updateCount}));
176176
return <Text text={'Count: ' + count} />;
177177
}
178178
Counter = forwardRef(Counter);
@@ -196,7 +196,7 @@ describe('ReactHooksWithNoopRenderer', () => {
196196
ReactNoop.yield('getInitialState');
197197
return props.initialState;
198198
});
199-
useImperativeMethods(ref, () => ({updateCount}));
199+
useImperativeHandle(ref, () => ({updateCount}));
200200
return <Text text={'Count: ' + count} />;
201201
}
202202
Counter = forwardRef(Counter);
@@ -214,7 +214,7 @@ describe('ReactHooksWithNoopRenderer', () => {
214214
function Counter(props, ref) {
215215
const [count, updateCount] = useState(0);
216216
const [label, updateLabel] = useState('Count');
217-
useImperativeMethods(ref, () => ({updateCount, updateLabel}));
217+
useImperativeHandle(ref, () => ({updateCount, updateLabel}));
218218
return <Text text={label + ': ' + count} />;
219219
}
220220
Counter = forwardRef(Counter);
@@ -444,7 +444,7 @@ describe('ReactHooksWithNoopRenderer', () => {
444444
function Counter({row: newRow}, ref) {
445445
let [reducer, setReducer] = useState(() => reducerA);
446446
let [count, dispatch] = useReducer(reducer, 0);
447-
useImperativeMethods(ref, () => ({dispatch}));
447+
useImperativeHandle(ref, () => ({dispatch}));
448448
if (count < 20) {
449449
dispatch('increment');
450450
// Swap reducers each time we increment
@@ -505,7 +505,7 @@ describe('ReactHooksWithNoopRenderer', () => {
505505

506506
function Counter(props, ref) {
507507
const [count, dispatch] = useReducer(reducer, 0);
508-
useImperativeMethods(ref, () => ({dispatch}));
508+
useImperativeHandle(ref, () => ({dispatch}));
509509
return <Text text={'Count: ' + count} />;
510510
}
511511
Counter = forwardRef(Counter);
@@ -546,7 +546,7 @@ describe('ReactHooksWithNoopRenderer', () => {
546546

547547
function Counter(props, ref) {
548548
const [count, dispatch] = useReducer(reducer, 0, initialAction);
549-
useImperativeMethods(ref, () => ({dispatch}));
549+
useImperativeHandle(ref, () => ({dispatch}));
550550
return <Text text={'Count: ' + count} />;
551551
}
552552
Counter = forwardRef(Counter);
@@ -576,7 +576,7 @@ describe('ReactHooksWithNoopRenderer', () => {
576576

577577
function Counter(props, ref) {
578578
const [count, dispatch] = useReducer(reducer, 0);
579-
useImperativeMethods(ref, () => ({dispatch}));
579+
useImperativeHandle(ref, () => ({dispatch}));
580580
return <Text text={'Count: ' + count} />;
581581
}
582582

packages/react/src/React.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ import {
3232
useCallback,
3333
useContext,
3434
useEffect,
35-
useImperativeMethods,
35+
useImperativeHandle,
3636
useLayoutEffect,
3737
useMemo,
3838
useReducer,
@@ -98,7 +98,7 @@ if (enableHooks) {
9898
React.useCallback = useCallback;
9999
React.useContext = useContext;
100100
React.useEffect = useEffect;
101-
React.useImperativeMethods = useImperativeMethods;
101+
React.useImperativeHandle = useImperativeHandle;
102102
React.useLayoutEffect = useLayoutEffect;
103103
React.useMemo = useMemo;
104104
React.useReducer = useReducer;

packages/react/src/ReactHooks.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,11 +102,11 @@ export function useMemo(
102102
return dispatcher.useMemo(create, inputs);
103103
}
104104

105-
export function useImperativeMethods<T>(
105+
export function useImperativeHandle<T>(
106106
ref: {current: T | null} | ((inst: T | null) => mixed) | null | void,
107107
create: () => T,
108108
inputs: Array<mixed> | void | null,
109109
): void {
110110
const dispatcher = resolveDispatcher();
111-
return dispatcher.useImperativeMethods(ref, create, inputs);
111+
return dispatcher.useImperativeHandle(ref, create, inputs);
112112
}

0 commit comments

Comments
 (0)