Problémy s novými id v Reactu
Nechť z databáze přišlo následující pole objektů:
const prods = [
{id: 1, name: 'product1', cost: 100},
{id: 2, name: 'product2', cost: 200},
{id: 3, name: 'product3', cost: 300},
];
Jak vidíte, id jsou číslována postupně.
Musíme však počítat s tím, že čísla
mohou mít mezery, například po 3.
může následovat hned 5. nebo 6.
Kvůli tomu náš klientský skript nemůže
vědět, jaké bude další id (v
našem případě to nemusí být 4).
Nové id vytváří databáze serveru.
To může způsobit určité problémy při
práci na klientovi. Podstata je následující: představme si,
že pomocí formuláře jsme přidali nový prvek
do našeho pole. Nemůžeme však jednoduše
vzít a přidat data z formuláře - vždyť my
nevíme, jaké id bude mít nový prvek!
Budeme muset odeslat požadavek na server,
aby nám dal další id v pořadí,
a teprve potom přidat prvek do našeho pole
objektů. To způsobí zpoždění se zobrazením
dat na obrazovce: než data dorazí na server,
než server nám je pošle zpět - uběhne
určitý čas.