【问题标题】:Setting default value of Material UI Autocomplete设置 Material UI Autocomplete 的默认值
【发布时间】:2020-08-08 14:50:53
【问题描述】:

我正在尝试将 Autocomplete 的初始值设置为“ACCU-SEAL 35-532 Bag Sealer”,但出现以下错误:

Material-UI:Autocomplete 的“getOptionLabel”方法返回 undefined 而不是“ACCU-SEAL 35-532 Bag Sealer”的字符串。

所以我尝试将以下内容添加到我的自动完成功能中:

getOptionSelected={(option, value) => option.label === value}

但我得到了同样的错误。

我在这里有一个我的代码示例:https://codesandbox.io/s/material-demo-fv075?file=/formElementsEdit.jsx

在设置自动完成的初始值方面的任何帮助都将非常有用。

【问题讨论】:

    标签: reactjs material-ui


    【解决方案1】:

    当您在自动完成中使用 options 时,您应该使用您的选项包含的相同值。

    在您的示例中,每个选项都是带有valuelabel 的对象。由于您在 getOptionLabel 函数中使用了 label - 您应该在传递的对象中至少使用 label

    选项#1:

    const value = "ACCU-SEAL 35-532 Bag Sealer";
    ...
    <Autocomplete
        ...
        value={{label: value}}
    

    选项 #2:

    const value = "ACCU-SEAL 35-532 Bag Sealer";
    ...
    <Autocomplete
        ...
        value={{label: value, value: 1}}
    

    选项#3: ...

    在任何上述选项中 - 属性 value 的值应该是具有至少一个键的对象 - label 键。

    根据您的代码检查以下示例:https://codesandbox.io/s/material-demo-zzfh7?file=/formElementsEdit.jsx

    【讨论】:

    • 选项 1 完美运行,感谢您的支持,您的真棒
    猜你喜欢
    • 2020-10-25
    • 2020-07-27
    • 2022-01-09
    • 2019-01-08
    • 2021-04-18
    • 2017-04-21
    • 1970-01-01
    • 1970-01-01
    • 2022-10-13
    相关资源
    最近更新 更多