Появится ваша проблема в следующей строке:
onChange={(event, newVal)=>onTagsChange({target:{name:"label",value: newVal.label }}
Это может быть связано с тем, что newValue составляет null
после очистки. Вы можете добавить такую защиту, как:
value: newVal || newVal.label
Поскольку мне не ясно, как вы используете итоговый выбор, моя предложенная защита может не подходить.
Вы также можете взглянуть на их «контролируемый» пример в документации (https://material-ui.com/components/autocomplete/#playground), в которой они используют атрибут value
для управления AutoComplete
:
<Autocomplete
{...defaultProps}
id="controlled-demo"
value={value}
onChange={(event, newValue) => {
setValue(newValue);
}}
renderInput={params => (
<TextField {...params} label="controlled" margin="normal" fullWidth />
)}
/>