Quando si utilizza React per eseguire il rendering dei componenti sul server, noto che gli attributi data-reactid sono effettivamente casuali. Capisco che è previsto. (https://groups.google.com/forum/#!topic/reactjs/ewTN-WOP1w8)Reattivo stabile per il rendering lato server
Tuttavia è un po 'sorprendente che questo quadro altrimenti funzionale introduca tale non determinismo nell'output della vista. Significa che i rendering successivi di una vista con stato identico creeranno HTML diversi, impedendo, ad esempio, al motore di visualizzazione di restituire un '304 non modificato' o di generare un ETag affidabile. (Apprezzo che tale memorizzazione nella cache possa essere gestita anche a un livello infrastrutturale superiore.)
C'è un modo per inizializzare la generazione dell'identificatore in modo che i reattidi siano deterministici? O è la ragione che è una cattiva idea spiegata da qualche altra parte?
Oltre a dire "è importante", non è chiaro perché sia così. –
Ho letto il suo commento dicendo che la ragione per cui React usa gli ID casuali è perché i componenti non possono avere identificatori in collisione, anche su server diversi. Si parla di cambiare [come vengono creati gli ID casuali su Github] (https://github.com/facebook/react/issues/2584) e si potrebbe seguire il loro esempio per generare i propri ID se lo si desidera. –