Reaktyvus objektų masyvo pridėjimas React
Dabar išnagrinėkime objektų masyvo
reaktyvumą. Šiuo atveju mes turime
atlikti bet kokius pakeitimus,
kreipdamiesi į elementus pagal id,
kurie yra saugomi pačiuose objektuose.
Pabandykime. Tarkime, kad turime šį objektų masyvą:
const initNotes = [
{
id: 'GYi9G_uC4gBF1e2SixDvu',
prop1: 'value11',
prop2: 'value12',
prop3: 'value13',
},
{
id: 'IWSpfBPSV3SXgRF87uO74',
prop1: 'value21',
prop2: 'value22',
prop3: 'value23',
},
{
id: 'JAmjRlfQT8rLTm5tG2m1L',
prop1: 'value31',
prop2: 'value32',
prop3: 'value33',
},
];
Atvaizduokime kiekvieną mūsų masyvo
elementą atskirame li žymėjime:
function App() {
const [notes, setNotes] = useState(initNotes);
const result = notes.map(note => {
return <li key={note.id}>
<span>{note.prop1}</span>
<span>{note.prop2}</span>
<span>{note.prop3}</span>
</li>;
});
return <div>
<ul>
{result}
</ul>
</div>;
}
Sukurkite mygtuką, kurį paspaudus
būtų pridedamas naujas elementas
į masyvo pabaigą, taip pridedant naują
li į ul žymėjimo pabaigą.
Sukurkite tris įvesties laukus ir mygtuką. Paspaudus
mygtuką, iš įvesties laukų duomenų sukurkite naują
li ul žymėjimo pabaigoje.