Как я могу объединить данные из useState в одну структуру?

Есть вот такое код, куда я записываю данные из полей:

const [title, setTitle] = useState('')
const [content, setContent] = useState('')
const [lead, setLead] = useState('')

Как я могу как-то объединить эти данные в какую-то одну структуру, чтобы потом вывести их вместе в 1 месте? Или же стоит изменить этот код, чтобы данные из трёх полей записывались в одну структуру?


Ответы (1 шт):

Автор решения: Locker

Если state контролируют вашу форму то можно сделать так:

const [value,setValue] = useState({title:'',content:'',lead:''});

const onChange=({target})=>{
  setValue({...value, [target.name]:target.value});
}

return(
  <form>
   <input onChange={onChange} name="content" value={value.content}/>  
   <input onChange={onChange}  name="title" value={value.title}/>
   <input onChange={onChange}  name="lead" value={value.lead}/>
  <form>
)
→ Ссылка