diff --git a/packages/react-reconciler/src/ReactChildFiber.new.js b/packages/react-reconciler/src/ReactChildFiber.new.js index 07cacc0dbbf..6a984baec0c 100644 --- a/packages/react-reconciler/src/ReactChildFiber.new.js +++ b/packages/react-reconciler/src/ReactChildFiber.new.js @@ -39,7 +39,6 @@ import { createFiberFromText, createFiberFromPortal, } from './ReactFiber.new'; -import {emptyRefsObject} from './ReactFiberClassComponent.new'; import {isCompatibleFamilyForHotReloading} from './ReactFiberHotReloading.new'; import {StrictLegacyMode} from './ReactTypeOfMode'; import {getIsHydrating} from './ReactFiberHydrationContext.new'; @@ -192,11 +191,7 @@ function coerceRef( return current.ref; } const ref = function(value) { - let refs = resolvedInst.refs; - if (refs === emptyRefsObject) { - // This is a lazy pooled frozen object, so we need to initialize. - refs = resolvedInst.refs = {}; - } + const refs = resolvedInst.refs; if (value === null) { delete refs[stringRef]; } else { diff --git a/packages/react-reconciler/src/ReactChildFiber.old.js b/packages/react-reconciler/src/ReactChildFiber.old.js index 7bad30d0d3c..8b6d4b8130d 100644 --- a/packages/react-reconciler/src/ReactChildFiber.old.js +++ b/packages/react-reconciler/src/ReactChildFiber.old.js @@ -39,7 +39,6 @@ import { createFiberFromText, createFiberFromPortal, } from './ReactFiber.old'; -import {emptyRefsObject} from './ReactFiberClassComponent.old'; import {isCompatibleFamilyForHotReloading} from './ReactFiberHotReloading.old'; import {StrictLegacyMode} from './ReactTypeOfMode'; import {getIsHydrating} from './ReactFiberHydrationContext.old'; @@ -192,11 +191,7 @@ function coerceRef( return current.ref; } const ref = function(value) { - let refs = resolvedInst.refs; - if (refs === emptyRefsObject) { - // This is a lazy pooled frozen object, so we need to initialize. - refs = resolvedInst.refs = {}; - } + const refs = resolvedInst.refs; if (value === null) { delete refs[stringRef]; } else { diff --git a/packages/react-reconciler/src/ReactFiberClassComponent.new.js b/packages/react-reconciler/src/ReactFiberClassComponent.new.js index 67352b1ca18..14524865749 100644 --- a/packages/react-reconciler/src/ReactFiberClassComponent.new.js +++ b/packages/react-reconciler/src/ReactFiberClassComponent.new.js @@ -12,7 +12,6 @@ import type {Lanes} from './ReactFiberLane.new'; import type {UpdateQueue} from './ReactFiberClassUpdateQueue.new'; import type {Flags} from './ReactFiberFlags'; -import * as React from 'react'; import { LayoutStatic, Update, @@ -80,12 +79,6 @@ import { const fakeInternalInstance = {}; -// React.Component uses a shared frozen object by default. -// We'll use it to determine whether we need to initialize legacy refs. -export const emptyRefsObject: $FlowFixMe = React.Component - ? new React.Component().refs - : {}; - let didWarnAboutStateAssignmentForComponent; let didWarnAboutUninitializedState; let didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate; @@ -836,7 +829,7 @@ function mountClassInstance( const instance = workInProgress.stateNode; instance.props = newProps; instance.state = workInProgress.memoizedState; - instance.refs = emptyRefsObject; + instance.refs = {}; initializeUpdateQueue(workInProgress); diff --git a/packages/react-reconciler/src/ReactFiberClassComponent.old.js b/packages/react-reconciler/src/ReactFiberClassComponent.old.js index 78962f3587a..295367d7a90 100644 --- a/packages/react-reconciler/src/ReactFiberClassComponent.old.js +++ b/packages/react-reconciler/src/ReactFiberClassComponent.old.js @@ -12,7 +12,6 @@ import type {Lanes} from './ReactFiberLane.old'; import type {UpdateQueue} from './ReactFiberClassUpdateQueue.old'; import type {Flags} from './ReactFiberFlags'; -import * as React from 'react'; import { LayoutStatic, Update, @@ -80,12 +79,6 @@ import { const fakeInternalInstance = {}; -// React.Component uses a shared frozen object by default. -// We'll use it to determine whether we need to initialize legacy refs. -export const emptyRefsObject: $FlowFixMe = React.Component - ? new React.Component().refs - : {}; - let didWarnAboutStateAssignmentForComponent; let didWarnAboutUninitializedState; let didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate; @@ -836,7 +829,7 @@ function mountClassInstance( const instance = workInProgress.stateNode; instance.props = newProps; instance.state = workInProgress.memoizedState; - instance.refs = emptyRefsObject; + instance.refs = {}; initializeUpdateQueue(workInProgress);