Когда вы делаете let seletedValues = this.state.queryComponents;
, вы создаете ссылку на эту переменную вместо того, чтобы делать копию.
Вы должны убедиться, что вы заменили свое состояние новым объектом / массивом для повторного использования.сделать, чтобы произошло.
Пожалуйста, попробуйте это:
removeSelectedValue = index => {
this.setState(prevState => ({
queryComponents: prevState.seletedValues.filter((a, i) => (i !== index));
});
};
Эта функция фильтра эквивалентна используемому вами соединению, но возвращает новый массив вместо изменения исходного.
С другой стороны, я передаю setState
функцию, которая использует prevState
, чтобы сделать код короче.