MCPcopy Create free account
hub / github.com/krasimir/react-in-patterns / manualDispatchChangeEvent

Function manualDispatchChangeEvent

code/communication/public/app.js:4739–4754  ·  view source on GitHub ↗
(nativeEvent)

Source from the content-addressed store, hash-verified

4737}
4738
4739function manualDispatchChangeEvent(nativeEvent) {
4740 var event = createAndAccumulateChangeEvent(activeElementInst, nativeEvent, getEventTarget(nativeEvent));
4741
4742 // If change and propertychange bubbled, we'd just bind to it like all the
4743 // other events and have it go through ReactBrowserEventEmitter. Since it
4744 // doesn't, we manually listen for the events and so we have to enqueue and
4745 // process the abstract event manually.
4746 //
4747 // Batching is necessary here in order to ensure that all event handlers run
4748 // before the next rerender (including event handlers attached to ancestor
4749 // elements instead of directly on the input). Without this, controlled
4750 // components don't work properly in conjunction with event bubbling because
4751 // the component is rerendered and the value reverted before all the event
4752 // handlers can run. See https://github.com/facebook/react/issues/708.
4753 batchedUpdates(runEventInBatch, event);
4754}
4755
4756function runEventInBatch(event) {
4757 runEventsInBatch(event, false);

Callers 1

handlePropertyChangeFunction · 0.70

Calls 3

getEventTargetFunction · 0.70
batchedUpdatesFunction · 0.70

Tested by

no test coverage detected