MCPcopy
hub / github.com/facebook/react / updateSelect

Function updateSelect

packages/react-dom-bindings/src/client/ReactDOMSelect.js:214–234  ·  view source on GitHub ↗
(
  element: Element,
  value: ?string,
  defaultValue: ?string,
  multiple: ?boolean,
  wasMultiple: ?boolean,
)

Source from the content-addressed store, hash-verified

212}
213
214export function updateSelect(
215 element: Element,
216 value: ?string,
217 defaultValue: ?string,
218 multiple: ?boolean,
219 wasMultiple: ?boolean,
220) {
221 const node: HTMLSelectElement = (element: any);
222
223 if (value != null) {
224 updateOptions(node, !!multiple, value, false);
225 } else if (!!wasMultiple !== !!multiple) {
226 // For simplicity, reapply `defaultValue` if `multiple` is toggled.
227 if (defaultValue != null) {
228 updateOptions(node, !!multiple, defaultValue, true);
229 } else {
230 // Revert the select back to its default unselected state.
231 updateOptions(node, !!multiple, multiple ? [] : '', false);
232 }
233 }
234}
235
236export function restoreControlledSelectState(element: Element, props: Object) {
237 const node: HTMLSelectElement = (element: any);

Callers 1

updatePropertiesFunction · 0.90

Calls 1

updateOptionsFunction · 0.85

Tested by

no test coverage detected