mirror of
https://github.com/zebrajr/react.git
synced 2025-12-06 00:20:04 +01:00
Enable eager listeners in open source (#19716)
* Enable eager listeners in open source * Fix tests * Enable in all places
This commit is contained in:
parent
c1ac052158
commit
b754caaaf2
|
|
@ -1097,6 +1097,8 @@ describe('ReactDOMFiber', () => {
|
|||
});
|
||||
|
||||
it('should not update event handlers until commit', () => {
|
||||
spyOnDev(console, 'error');
|
||||
|
||||
let ops = [];
|
||||
const handlerA = () => ops.push('A');
|
||||
const handlerB = () => ops.push('B');
|
||||
|
|
@ -1129,11 +1131,7 @@ describe('ReactDOMFiber', () => {
|
|||
class Click extends React.Component {
|
||||
constructor() {
|
||||
super();
|
||||
expect(() => {
|
||||
node.click();
|
||||
}).toErrorDev(
|
||||
'Warning: unstable_flushDiscreteUpdates: Cannot flush updates when React is already rendering.',
|
||||
);
|
||||
node.click();
|
||||
}
|
||||
render() {
|
||||
return null;
|
||||
|
|
@ -1183,6 +1181,16 @@ describe('ReactDOMFiber', () => {
|
|||
// Any click that happens after commit, should invoke A.
|
||||
click();
|
||||
expect(ops).toEqual(['A']);
|
||||
|
||||
if (__DEV__) {
|
||||
// TODO: this warning shouldn't be firing in the first place if user didn't call it.
|
||||
const errorCalls = console.error.calls.count();
|
||||
for (let i = 0; i < errorCalls; i++) {
|
||||
expect(console.error.calls.argsFor(i)[0]).toMatch(
|
||||
'unstable_flushDiscreteUpdates: Cannot flush updates when React is already rendering.',
|
||||
);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
it('should not crash encountering low-priority tree', () => {
|
||||
|
|
|
|||
|
|
@ -137,4 +137,4 @@ export const enableDiscreteEventFlushingChange = false;
|
|||
export const enablePassiveEventIntervention = true;
|
||||
export const disableOnScrollBubbling = true;
|
||||
|
||||
export const enableEagerRootListeners = false;
|
||||
export const enableEagerRootListeners = true;
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ export const deferRenderPhaseUpdateToNextBatch = true;
|
|||
export const decoupleUpdatePriorityFromScheduler = false;
|
||||
export const enableDiscreteEventFlushingChange = false;
|
||||
export const enablePassiveEventIntervention = true;
|
||||
export const enableEagerRootListeners = false;
|
||||
export const enableEagerRootListeners = true;
|
||||
|
||||
// Flow magic to verify the exports of this file match the original version.
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ export const deferRenderPhaseUpdateToNextBatch = true;
|
|||
export const decoupleUpdatePriorityFromScheduler = false;
|
||||
export const enableDiscreteEventFlushingChange = false;
|
||||
export const enablePassiveEventIntervention = true;
|
||||
export const enableEagerRootListeners = false;
|
||||
export const enableEagerRootListeners = true;
|
||||
|
||||
// Flow magic to verify the exports of this file match the original version.
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ export const deferRenderPhaseUpdateToNextBatch = true;
|
|||
export const decoupleUpdatePriorityFromScheduler = false;
|
||||
export const enableDiscreteEventFlushingChange = false;
|
||||
export const enablePassiveEventIntervention = true;
|
||||
export const enableEagerRootListeners = false;
|
||||
export const enableEagerRootListeners = true;
|
||||
|
||||
// Flow magic to verify the exports of this file match the original version.
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ export const deferRenderPhaseUpdateToNextBatch = true;
|
|||
export const decoupleUpdatePriorityFromScheduler = false;
|
||||
export const enableDiscreteEventFlushingChange = false;
|
||||
export const enablePassiveEventIntervention = true;
|
||||
export const enableEagerRootListeners = false;
|
||||
export const enableEagerRootListeners = true;
|
||||
|
||||
// Flow magic to verify the exports of this file match the original version.
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ export const deferRenderPhaseUpdateToNextBatch = true;
|
|||
export const decoupleUpdatePriorityFromScheduler = false;
|
||||
export const enableDiscreteEventFlushingChange = false;
|
||||
export const enablePassiveEventIntervention = true;
|
||||
export const enableEagerRootListeners = false;
|
||||
export const enableEagerRootListeners = true;
|
||||
|
||||
// Flow magic to verify the exports of this file match the original version.
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ export const deferRenderPhaseUpdateToNextBatch = true;
|
|||
export const decoupleUpdatePriorityFromScheduler = false;
|
||||
export const enableDiscreteEventFlushingChange = false;
|
||||
export const enablePassiveEventIntervention = true;
|
||||
export const enableEagerRootListeners = false;
|
||||
export const enableEagerRootListeners = true;
|
||||
|
||||
// Flow magic to verify the exports of this file match the original version.
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ export const deferRenderPhaseUpdateToNextBatch = true;
|
|||
export const decoupleUpdatePriorityFromScheduler = false;
|
||||
export const enableDiscreteEventFlushingChange = true;
|
||||
export const enablePassiveEventIntervention = true;
|
||||
export const enableEagerRootListeners = false;
|
||||
export const enableEagerRootListeners = true;
|
||||
|
||||
// Flow magic to verify the exports of this file match the original version.
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ export const decoupleUpdatePriorityFromScheduler = __VARIANT__;
|
|||
export const skipUnmountedBoundaries = __VARIANT__;
|
||||
export const enablePassiveEventIntervention = __VARIANT__;
|
||||
export const disableOnScrollBubbling = __VARIANT__;
|
||||
export const enableEagerRootListeners = __VARIANT__;
|
||||
export const enableEagerRootListeners = !__VARIANT__;
|
||||
|
||||
// Enable this flag to help with concurrent mode debugging.
|
||||
// It logs information to the console about React scheduling, rendering, and commit phases.
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user