Afișarea reactivă a datelor în React
Să presupunem că avem un array de obiecte, care conține denumirile și descrierile a ceva:
jsxconst initNotes = [
{
id: id(),
name: 'name1',
desc: 'long description 1'
},
{
id: id(),
name: 'name2',
desc: 'long description 2'
},
{
id: id(),
name: 'name3',
desc: 'long description 3'
},
];
Să afișăm fiecare element din acest array într-un paragraf separat:
jsxfunction App() {
const [notes, setNotes] = useState(initNotes);
const result = notes.map(note => {
return <p key={note.id}>
{note.name},
<i>{note.desc}</i>
</p>;
});
return <div>
{result}
</div>;
}
Acum să facem astfel încât descrierea
să fie inițial ascunsă, dar la sfârșitul fiecărui
paragraf să adăugăm butoane pentru afișarea descrierii
din acel paragraf.
Pentru aceasta, în fiecare obiect cu produs vom adăuga
proprietatea show, care reglează afișarea descrierii:
jsxconst initNotes = [
{
id: id(),
name: 'name1',
desc: 'long description 1',
show: false,
},
{
id: id(),
name: 'name2',
desc: 'long description 2',
show: false,
},
{
id: id(),
name: 'name3',
desc: 'long description 3',
show: false,
},
];
Задание 1
La sfârșitul fiecărui paragraf faceți un buton, la click pe care se va afișa descrierea completă a produsului.