Я хочу сгенерировать входные данные на основе json, поэтому сначала я установил его в начальное состояние, затем в дочернем компоненте я хочу изменить его поле, дело в том, что этот компонент не обновляется ... Он отображает один раз и понятия не имею, как это сделать обновляется каждый раз, когда ввод onChange меняет свое значение. Есть идеи, как сделать так, чтобы значение ввода обновлялось каждый раз, когда я что-то печатаю?
РОДИТЕЛЬ
function App() {
const [inputValue, setInputValue] = useState(chunkingRow);
const handleChunkingChange = (e, index) => {
let inputContent = inputValue;
const reg = new RegExp(/^[0-9]+$/);
if (e.target.value.match(reg)) {
inputContent[index] = {
...inputContent[index],
content: e.target.value,
};
setInputValue(inputContent);
console.log(inputValue);
} else console.log('not a number')
};
return (
<div>
<Wrapper>
{Chunk(inputValue, handleChunkingChange)}
</Wrapper>
</div>
);
}
РЕБЕНОК
const Chunk = (inputValue, handleChunkingChange) => {
return(
<div>
{inputValue.map((el, index) => (
<div key={index}>
<p>{el.title}</p>
{console.log(el.content)}
<input
type="text"
onChange={(e, i) => handleChunkingChange(e, index)}
value={el.content}
/>
</div>
))}
</div>
);
}
ссылка на демонстрацию https://codesandbox.io/s/stoic-mirzakhani-46exz?file=/src/App.js
<Chunk inputValue={inputValue} handleChunkingChange={handleChunkingChange} />
- person Edgar Henriquez   schedule 07.04.2020