我使用的是Material UI自动完成功能,因此遇到了这个问题。在文档here中说:“该值必须与选项具有引用相等性才能被选择”。我完全按照它说的去做,但似乎不起作用。
<Autocomplete
disableCloseOnSelect={true}
multiple
options={techList}
getOptionLabel={(options) => options.techName}
value={newValueDialog}
onChange={(e, tech) => {
this.handleChangeValueDialog(tech);
}}
popupIcon={false}
closeIcon={false}
renderTags={(value, getTagProps) =>
value.map((option, index) => (
<Chip
color="primary"
variant="outlined"
label={option.techName}
{...getTagProps({ index })}
deleteIcon={<ClearIcon />}
/>
))
}
renderInput = {((params)=>( )} />
答案 0 :(得分:1)
在使用自定义对象时,请确保与自己的实现相同。
https://material-ui.com/api/autocomplete/#autocomplete-api
您必须实现“ getOptionSelected”方法
getOptionSelected={(option, value) =>
option.techName === value.techName
}