繁体   English   中英

Mui5 自动完成警告

[英]Mui5 Autocomplete warning

我正在使用 Material-UI 5 AutoComplete 组件,但收到一个我无法处理的警告。

代码:

       <Autocomplete
          disableClearable
          options={options}
          value={{ displayName: selectedName || "" }}
          getOptionLabel={(option) => option.displayName || ""}
          onChange={onSelectChange.bind(null, selectedName)}
          isOptionEqualToValue={(option, selected) =>
             option.displayName === selected.displayName
          }
          renderOption={(props, option) => (
            <li {...props}>
              <Typography>{option.displayName}</Typography>
            </li>
          )}
         renderInput={(params) => (
            <TextField
              {...params}
              variant="outlined"
              placeholder={placeholder}
            />)}
        />

警告:

useAutocomplete.js:220 MUI: The value provided to Autocomplete is invalid.
None of the options match with `{"displayName":""}`.
You can use the `isOptionEqualToValue` prop to customize the equality test.

每个选项都是一个带有 displayName 字段的 object,(例如:{displayName})

我看到了一些关于它的帖子,但没有任何帮助。 我正在使用一个受控组件(值属性)并且在第一次渲染时 selectedName 是空的所以我在从列表中选择一个项目之前收到错误。

也许应该检查 isOptionEqualToValue 来检查所选的值? 类似这样:

isOptionEqualToValue={(option, value) => {
          if (value === "" || value === option)
              return true;
      }}

实际上是检查显示名称。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM