https://codesandbox.io/s/zoojymzyp
В моем примере выше есть возможность сдвигать и удалять поля, чтобы обновить json для отправки.Форма предварительно заполняет поля, которые могут быть перезаписаны или удалены.Тем не менее, я хочу, чтобы оставалось как минимум 1 поле - например, вы не можете удалить все поля, должно быть хотя бы одно поле - в минуту я могу удалить все, пока не будет никаких входных данных.
class renderForm extends React.Component {
render() {
let {
fields,
label
} = this.props;
const removeName = (index) => {
fields = fields.remove(index);
}
return ( <
div >
<
div variant = "fab"
color = "primary"
className = "jr-fab-btn"
aria - label = "add"
onClick = {
() => fields.push()
} >
ADD <
/div>
{
fields.map((newIntel, index) => {
console.log("newIntel", newIntel, index);
return ( <
div >
<
Field name = {
newIntel
}
key = {
index
}
label = {
label
}
placeholder = {
label
}
component = {
renderTextArea
}
/> <
p variant = "fab"
color = "primary"
style = {
{
'cursor': 'pointer'
}
}
className = "jr-fab-btn"
aria - label = "add"
onClick = {
() => removeName(index)
} >
REMOVE <
/p> <
/div>
);
})
} <
/div>
)
}
}