Skip to content

Commit 47e337e

Browse files
committed
Revert "Revert useEvent PRs (facebook#18438)"
This reverts commit 90e90ac.
1 parent dc3c6c9 commit 47e337e

1 file changed

Lines changed: 24 additions & 0 deletions

File tree

packages/react-dom/src/events/accumulateTwoPhaseListeners.js

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,30 @@ export default function accumulateTwoPhaseListeners(
143143
dispatchInstances.push(node);
144144
}
145145
}
146+
} else if (enableScopeAPI && node.tag === ScopeComponent) {
147+
const reactScope = node.stateNode.methods;
148+
const eventTypeMap = reactScopeListenerStore.get(reactScope);
149+
if (eventTypeMap !== undefined) {
150+
const type = ((event.type: any): DOMTopLevelEventType);
151+
const listeners = eventTypeMap.get(type);
152+
if (listeners !== undefined) {
153+
const captureListeners = Array.from(listeners.captured);
154+
const bubbleListeners = Array.from(listeners.bubbled);
155+
156+
for (let i = 0; i < captureListeners.length; i++) {
157+
const listener = captureListeners[i];
158+
const {callback} = listener;
159+
dispatchListeners.unshift(callback);
160+
dispatchInstances.unshift(((lastHostComponent: any): Element));
161+
}
162+
for (let i = 0; i < bubbleListeners.length; i++) {
163+
const listener = bubbleListeners[i];
164+
const {callback} = listener;
165+
dispatchListeners.push(callback);
166+
dispatchInstances.push(((lastHostComponent: any): Element));
167+
}
168+
}
169+
}
146170
}
147171
if (
148172
enableModernEventSystem &&

0 commit comments

Comments
 (0)