попробуйте этот код.
<TextField
fullWidth={true}
id="standard-name"
label="Tags"
className={classes.textField}
onChange={handleChange('tag')}
onKeyDown={(e) => pushToarray(e)}
margin="dense"
/>
при вводе вы должны увидеть добавляемый тег
function pushToarray(e){
if(e.key == 'Enter'){
e.preventDefault();
setValues({ tags : [...values.tags ,e.target.value] ,
tag : ''})
}
}
и нормальный handleChange изменения текста в поле:
const handleChange = name => event => {
setValues({ ...values, [name]: event.target.value });
console.log(values)
};
Состояние инициализации, подобное этому, я инициализировал с пустым массивом, вы можете использовать ключи:
const [values, setValues] = React.useState({
tag :'',
tags: [],
})
вот ваша функция handleDelete для удаления чипов:
function handleDelete(item){
var rm = values.tags.indexOf(item);
values.tags.splice( rm, 1)
setValues( { tags : values.tags})
}
это ваш чипкомпонент должен быть
<Paper className={classes.root}>
{
values.tags && values.tags.map( (tag ,id) =>(
<Chip color="default" className={classes.chip} onDelete={() => handleDelete(tag)} key={id} label={tag}/>
))
}