【问题标题】:Can't change value of react-select field无法更改反应选择字段的值
【发布时间】:2019-07-09 09:28:40
【问题描述】:

我正在为我的 React 应用选择字段使用 React-Select 库。我有相同的表格来添加和编辑数据。如果我不提供任何值,它可以正常工作,但如果我想在应用程序呈现时使用默认值,我无法更改它们。它们显示为已选中,但如果我尝试选择另一个选项,它不会更新,并且我在 value 属性中提供的值仍处于选中状态。

我尝试使用defaultValue 而不是value,但是在应用呈现时它没有选择任何内容。

<Select 
    placeholder="Deposit"
    options={deposits}
    getOptionValue={ option =>
        option["id"]
    }
    getOptionLabel={ option => {
        return option["name"];
    }}
    onChange={ value => {
        this.setState({ deposit_id: value.id }}
    value={{
        value: deposit_id || "",
        name: deposit_name || ""
    }}
/>

deposits 是一个对象数组,它呈现名称列表,但是当我单击其中一个时,我在value 中提供的那个仍然处于选中状态,但它应该选择我单击的那个on... 我该如何改变它?我的onChange 函数有问题吗?还是我做错了什么?

【问题讨论】:

  • 您使用的是哪个版本的react-select

标签: reactjs onchange react-select


【解决方案1】:

试试下面的代码。 value props 应该是一个字符串,即来自 state 的值。

<Select 
    placeholder="Deposit"
    options={deposits}
    getOptionValue={ option =>
        option["id"]
    }
    getOptionLabel={ option => {
        return option["name"];
    }}
    onChange={ value => {
        this.setState({ deposit_id: value.id }}
    value={deposit_id}
/>

【讨论】:

  • 这也不起作用。它不会选择任何使用它的东西,不会选择我提供的值,也不会选择我之后选择的值...谢谢您的时间:)
猜你喜欢
  • 2020-11-17
  • 2022-11-27
  • 2019-04-23
  • 1970-01-01
  • 2021-09-17
  • 2010-11-22
  • 1970-01-01
  • 1970-01-01
  • 2016-12-20
相关资源
最近更新 更多