【发布时间】:2019-12-19 03:05:03
【问题描述】:
我使用react-select 作为我的选择下拉菜单。我遇到的问题是,如果用户改变主意,没有空选项可以重置下拉值。
目前我正在选择选项并手动添加一个空字符串,但我觉得库中必须有一些东西来处理这个?我在文档中找不到任何内容。
我的代码如下所示,其中有一个code sandbox here。
从“反应”导入反应; 从“react-select”导入选择;
const App = () => {
const options = [
{ value: "chocolate", label: "Chocolate" },
{ value: "strawberry", label: "Strawberry" },
{ value: "vanilla", label: "Vanilla" }
];
return <Dropdown options={options} />;
}
const Dropdown = ({ options }) => {
const optionsWithEmptyOption = [{ value: "", label: "" }, ...options];
return <Select options={optionsWithEmptyOption} />;
};
【问题讨论】:
-
理想情况下,使用 Stack Snippets(
[<>]工具栏按钮)在这里,现场制作您的可运行示例。 Stack Snippets 支持 React,包括 JSX; here's how to do one. -
很多人的做法不一定正确。异地例子有两个问题: 1.人们必须到异地才能使用它们。 2. 它真的非常容易从您的问题中意外遗漏重要的代码/标记/配置,如果外部链接消失,问题将变得毫无用处。
-
@TJCrowder 蓝线是我在此行中添加的
const optionsWithEmptyOption = [{ value: "", label: "" }, ...options];这不是开箱即用的,但我觉得一定有一些东西,因为我认为这是一个有效用例 -
出于某种原因,我假设您没有将其包含在示例中,因此证明了问题。只是没有给予足够的关注。
标签: javascript reactjs ecmascript-6 react-select