dillon1000/react
Commit
Browse files New commit phase lifecycle: getSnapshotBeforeUpdate (#12404)
* Implemented new getSnapshotBeforeUpdate lifecycle * Store snapshot value from Fiber to instance (__reactInternalSnapshotBeforeUpdate) * Use commitAllHostEffects() traversal for getSnapshotBeforeUpdate() * Added DEV warnings and tests for new lifecycle * Don't invoke legacy lifecycles if getSnapshotBeforeUpdate() is defined. DEV warn about this. * Converted did-warn objects to Sets in ReactFiberClassComponent * Replaced redundant new lifecycle checks in a few methods * Check for polyfill suppress flag on cWU as well before warning * Added Snapshot bit to HostEffectMask
Changed paths12 files
First-parent comparisonpackages/react-dom/src/__tests__/ReactComponentLifeCycle-test.js ModifiedM packages/react-dom/src/__tests__/ReactErrorBoundaries-test.internal.js ModifiedM packages/react-reconciler/src/ReactDebugFiberPerf.js ModifiedM packages/react-reconciler/src/ReactFiberClassComponent.js ModifiedM packages/react-reconciler/src/ReactFiberCommitWork.js ModifiedM packages/react-reconciler/src/ReactFiberScheduler.js ModifiedM packages/react-reconciler/src/ReactStrictModeWarnings.js ModifiedM packages/react-test-renderer/src/ReactShallowRenderer.js ModifiedM packages/react-test-renderer/src/__tests__/ReactShallowRenderer-test.js ModifiedM packages/react/src/__tests__/ReactContextValidator-test.js ModifiedM packages/react/src/__tests__/createReactClassIntegration-test.js ModifiedM packages/shared/ReactTypeOfSideEffect.js ModifiedPatch
Files changed
Rendering syntax-highlighted changes…