При добавлении строки вы устанавливаете начальные значения в качестве элементов ввода. Чем при удалении вы смотрите в массиве индекс объекта, содержащего входные элементы. Функция indexOf возвращает первый индекс вхождения.
Лучшее решение - обновить кнопку удаления, чтобы передать индекс удаляемого элемента
<th><button onClick={() => this.delete(index)}
Чем просто удалить элемент с указанным индексом в вашей функции.
delete = (index) => {
let datas = this.state.datas.filter((e, i) => i !== index);
this.setState({ datas : datas });
}
Но это все еще не полностью исправит ваше решение, потому что вы устанавливаете новый элемент массива для хранения входных элементов. Что вы не должны.
Если вы повторяете части кода своего представления, частичная идея - хорошая идея. Если код, который вы используете повторно, немного отличается на ваших страницах, используйте параметры, которые вы можете передать частичному.
Что касается CSS, я бы предложил оставить его вне вашего частичного / шаблона. Если у вас много частичного специфического кода CSS, создайте папку «partials» в web / css и назовите файлы css в соответствии с вашими частями (если вы считаете, что накладные расходы стоят организации).
Я использую частичные данные для частей кода представления, которые используются более чем в одном месте. Если код будет продублирован или повторно использован в нескольких местах, тогда он является основным кандидатом, который будет СУХОЙ и помещен в партиал.
Что касается кода стилизации, все, что должно находиться в вашем CSS файлы
Я использую партиалы в двух случаях: