diff --git a/packages/react-dom-bindings/src/client/ReactDOMInput.js b/packages/react-dom-bindings/src/client/ReactDOMInput.js index 6abf032d8c45e..e53567f69ec54 100644 --- a/packages/react-dom-bindings/src/client/ReactDOMInput.js +++ b/packages/react-dom-bindings/src/client/ReactDOMInput.js @@ -103,9 +103,12 @@ export function initWrapperState(element: Element, props: Object) { const node = ((element: any): InputWithWrapperState); const defaultValue = props.defaultValue == null ? '' : props.defaultValue; + const initialChecked = props.checked != null ? props.checked : defaultChecked; node._wrapperState = { initialChecked: - props.checked != null ? props.checked : props.defaultChecked, + typeof initialChecked !== 'function' && + typeof initialChecked !== 'symbol' && + !!initialChecked, initialValue: getToStringValue( props.value != null ? props.value : defaultValue, ),