Change:
I tried updating from to . Something has changed in between these releases that is making it so that in onChange's synthetic event is undefined.
This appears to be related to a bug in . does not accept the argument and does not pass it on to . However that's not the only fix needed, also needs to pass something in place of the that expects. Also it seems has the same issue with being passed. I tried fixing this myself. However I have issues with the test setup and/or the test utils seem incapable of triggering from .
Yes I can confirm I have this issue too! This unfortunately makes the beta unusable in my app. The is null while the native event has a target
Same issue. The workaround is using instead of . But that's kinda wrong :(
Same here, but you can use for now.
Excuse me. I'm a beginners of React. Can I ask a question? Why can I use "jsx -watch src/build" to translate "" file to plain JavaScrip?
In fact, I can't see any result after do all steps
I don't know, but this is not the place for asking such questions. Ask this on Stackoverflow or IRC / Slack channels maybe
Thank you for your answer.

Discussion:
topLevelType, topLevelTarget, topLevelTargetID, <del> nativeEvent </del> <ins> nativeEvent, nativeEventTarget </ins> ) { var eventType; var fallbackData;

var event = SyntheticCompositionEvent.getPooled( eventType, topLevelTargetID, <del> nativeEvent </del> <ins> nativeEvent, nativeEventTarget </ins> ); if (fallbackData) {

topLevelType, topLevelTarget, topLevelTargetID, <del> nativeEvent </del> <ins> nativeEvent, nativeEventTarget </ins> ) { var chars;

var event = SyntheticInputEvent.getPooled( eventTypes.beforeInput, topLevelTargetID, <del> nativeEvent </del> <ins> nativeEvent, nativeEventTarget </ins> ); event.data = chars;

topLevelType, topLevelTarget, topLevelTargetID, <del> nativeEvent </del> <ins> nativeEvent, nativeEventTarget </ins> ) { return [ extractCompositionEvent( topLevelType, topLevelTarget, topLevelTargetID, <del> nativeEvent </del> <ins> nativeEvent, nativeEventTarget </ins> ), extractBeforeInputEvent( topLevelType, topLevelTarget, topLevelTargetID, <del> nativeEvent </del> <ins> nativeEvent, nativeEventTarget </ins> ), ]; },

var event = SyntheticEvent.getPooled( eventTypes.change, activeElementID, <del> nativeEvent </del> <ins> nativeEvent, nativeEvent.target </ins> ); EventPropagators.accumulateTwoPhaseDispatches(event);

topLevelType, topLevelTarget, topLevelTargetID, <del> nativeEvent) { </del> <ins> nativeEvent, nativeEventTarget) { </ins> var getTargetIDFunc, handleEventFunc; if (shouldUseChangeEvent(topLevelTarget)) {

var event = SyntheticEvent.getPooled( eventTypes.change, targetID, <del> nativeEvent </del> <ins> nativeEvent, nativeEventTarget </ins> ); event.type = 'change'; EventPropagators.accumulateTwoPhaseDispatches(event);

var mocks = require('mocks'); describe('ReactDOMInput', function() { <ins> var EventConstants; </ins> var React; var ReactLink; var ReactTestUtils; beforeEach(function() { require('mock-modules').dumpCache(); <ins> EventConstants = require('EventConstants'); </ins> React = require('React'); ReactLink = require('ReactLink'); ReactTestUtils = require('ReactTestUtils');

expect(node.value).toBe('0'); }); <ins> it('should have the correct target value', function() { var handled = false; var handler = function(event) { expect(event.target.nodeName).toBe('INPUT'); handled = true; }; var stub = <input type="text" value={0} onChange={handler} />; var container = document.createElement('div'); var node = React.render(stub, container); node.value = 'giraffe'; var fakeNativeEvent = new function() {}; fakeNativeEvent.target = node; fakeNativeEvent.path = [node, container]; ReactTestUtils.simulateNativeEventOnNode( EventConstants.topLevelTypes.topInput, node, fakeNativeEvent ); expect(handled).toBe(true); }); </ins> it('should not set a value for submit buttons unnecessarily', function() { var stub = <input type="submit" />; stub = ReactTestUtils.renderIntoDocument(stub);