在 React 中设置 Select 元素的默认值
本文将讨论 React 中的 <select>
和 <option>
元素。我们将探讨如何访问选定的值并设置默认值。
在 React 中使用 defaultValue
属性设置 Select 元素的默认值
React 是一个基于 JavaScript 的 UI 库,用于构建强大的 Web 应用程序。任何动态 Web 应用程序都需要接受用户输入并相应地更新页面。
state
是 React 的核心功能之一,通常用于存储来自用户输入的值并在必要时触发更改。
与 HTML 不同,用户的选择在 selected
属性中指定,React 使用 value
属性代替。这样做是为了保持所有表单和输入元素一致。
React 中的所有受控输入组件都将用户选择的值保持在状态
中。 <select>
元素,如果它是受控的,则必须将 value
属性设置为状态中的选定值。
要设置 <select>
元素的默认值,你可以使用 React 中的 defaultValue
属性。让我们看一个示例代码。
export default function Select() {
const [choice, setChoice] = useState();
return (
<div>
<select
value={choice}
defaultValue={"default"}
onChange={(e) => setChoice(e.target.value)}
>
<option value={"default"} disabled>
Choose an option
</option>
<option value={"one"}>One</option>
<option value={"two"}>Two</option>
<option value={"three"}>Three</option>
</select>
<h1>You selected {choice}</h1>
</div>
);
}
这个受控组件使用 <select>
元素上适当命名的 defaultValue
属性设置默认值。
请注意,defaultValue
属性的值应与选项之一的 value
属性相同。
我们使用 onChange
处理程序来更新我们的状态变量的值。你可以在 CodeSandbox 上查看演示。
如果你的 <select>
元素不受控制,你可以不设置 select
元素和每个 options
的 value
属性。你可以使用 onChange
事件处理程序来更新状态。
在 React 中使用 react-select
库设置 Select 元素的默认值
react-select
是一个提供自定义 Select
组件的库,并为你提供自定义其外观、功能等的选项。
要自定义选项,你必须提供带有键值对的对象数组;例如,我们之前示例中的选项如下。
import Select from 'react-select';
export default function select(){
let options = [{label: "One", value: "one"}, {label: "Two", value: "two"}, {label: "Three", value: "three"}]
return (
<Select options={options}
defaultValue={{label: "Choose one", value: ""}}></Select>
)
}
如你所见,react-select
允许我们设置默认值。只能有一个默认值,因此 defaultValue
属性的值应该是具有 value
和 label
属性的单个对象。
从 react-select
包导入的 Select
组件中的所有事件处理和呈现都在后台进行。
Irakli is a writer who loves computers and helping people solve their technical problems. He lives in Georgia and enjoys spending time with animals.
LinkedIn