From a9a078a4236d7ff3c37a85421780c71ea10990b6 Mon Sep 17 00:00:00 2001 From: Hendeca Date: Fri, 6 Oct 2017 16:04:32 -0700 Subject: [PATCH] Changed the error message displayed when a select element with props.multiple set to true and value set to null to suggest an empty array instead of an empty string. Addresses issue 9038 --- .../dom/shared/hooks/ReactDOMNullInputValuePropHook.js | 3 ++- .../dom/shared/wrappers/__tests__/ReactDOMInput-test.js | 2 +- .../dom/shared/wrappers/__tests__/ReactDOMSelect-test.js | 2 +- .../dom/shared/wrappers/__tests__/ReactDOMTextarea-test.js | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/renderers/dom/shared/hooks/ReactDOMNullInputValuePropHook.js b/src/renderers/dom/shared/hooks/ReactDOMNullInputValuePropHook.js index 74ddf2b888938e..899b2b02638592 100644 --- a/src/renderers/dom/shared/hooks/ReactDOMNullInputValuePropHook.js +++ b/src/renderers/dom/shared/hooks/ReactDOMNullInputValuePropHook.js @@ -29,9 +29,10 @@ function validateProperties(type, props) { warning( false, '`value` prop on `%s` should not be null. ' + - 'Consider using the empty string to clear the component or `undefined` ' + + 'Consider using an empty %s to clear the component or `undefined` ' + 'for uncontrolled components.%s', type, + type === 'select' ? 'array' : 'string', getStackAddendum(), ); diff --git a/src/renderers/dom/shared/wrappers/__tests__/ReactDOMInput-test.js b/src/renderers/dom/shared/wrappers/__tests__/ReactDOMInput-test.js index 0e289c0d80f2a4..b251d764632aa2 100644 --- a/src/renderers/dom/shared/wrappers/__tests__/ReactDOMInput-test.js +++ b/src/renderers/dom/shared/wrappers/__tests__/ReactDOMInput-test.js @@ -810,7 +810,7 @@ describe('ReactDOMInput', () => { ReactTestUtils.renderIntoDocument(); expectDev(console.error.calls.argsFor(0)[0]).toContain( '`value` prop on `input` should not be null. ' + - 'Consider using the empty string to clear the component or `undefined` ' + + 'Consider using an empty string to clear the component or `undefined` ' + 'for uncontrolled components.', ); diff --git a/src/renderers/dom/shared/wrappers/__tests__/ReactDOMSelect-test.js b/src/renderers/dom/shared/wrappers/__tests__/ReactDOMSelect-test.js index ae558db9e4c43e..7aae39e115c826 100644 --- a/src/renderers/dom/shared/wrappers/__tests__/ReactDOMSelect-test.js +++ b/src/renderers/dom/shared/wrappers/__tests__/ReactDOMSelect-test.js @@ -514,7 +514,7 @@ describe('ReactDOMSelect', () => { ); expectDev(console.error.calls.argsFor(0)[0]).toContain( '`value` prop on `select` should not be null. ' + - 'Consider using the empty string to clear the component or `undefined` ' + + 'Consider using an empty array to clear the component or `undefined` ' + 'for uncontrolled components.', ); diff --git a/src/renderers/dom/shared/wrappers/__tests__/ReactDOMTextarea-test.js b/src/renderers/dom/shared/wrappers/__tests__/ReactDOMTextarea-test.js index a6c3204487a8c3..2fdcfe91a46155 100644 --- a/src/renderers/dom/shared/wrappers/__tests__/ReactDOMTextarea-test.js +++ b/src/renderers/dom/shared/wrappers/__tests__/ReactDOMTextarea-test.js @@ -357,7 +357,7 @@ describe('ReactDOMTextarea', () => { ReactTestUtils.renderIntoDocument(