diff --git a/packages/react-dom/src/__tests__/ReactDOMInput-test.js b/packages/react-dom/src/__tests__/ReactDOMInput-test.js index bd008a200e..391e14fe01 100644 --- a/packages/react-dom/src/__tests__/ReactDOMInput-test.js +++ b/packages/react-dom/src/__tests__/ReactDOMInput-test.js @@ -115,6 +115,10 @@ describe('ReactDOMInput', () => { ReactDOM.render(, container); }); + it('should not warn with value and onInput handler', () => { + ReactDOM.render( {}} />, container); + }); + it('should properly control a value even if no event listener exists', () => { let node; diff --git a/packages/react-dom/src/shared/ReactControlledValuePropTypes.js b/packages/react-dom/src/shared/ReactControlledValuePropTypes.js index 994419ba0c..60df6ab2e5 100644 --- a/packages/react-dom/src/shared/ReactControlledValuePropTypes.js +++ b/packages/react-dom/src/shared/ReactControlledValuePropTypes.js @@ -33,6 +33,7 @@ if (__DEV__) { if ( hasReadOnlyValue[props.type] || props.onChange || + props.onInput || props.readOnly || props.disabled || props[propName] == null ||