You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/content/reference/react/useId.md
+8-8Lines changed: 8 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -49,13 +49,13 @@ function PasswordField() {
49
49
50
50
#### Caveats {/*caveats*/}
51
51
52
-
* `useId` è un Hook, quindi puoi chiamarlo **solo al top level del tuo componente** o dei tuoi Hooks personalizzati. Non puoi chiamarlo all'interno di loop o condizioni. Se ne hai bisogno, estrai un nuovo componente e sposta lo state al suo interno.
52
+
* `useId` è un Hook, quindi puoi chiamarlo **solo al top level del tuo componente** o dei tuoi Hook personalizzati. Non puoi chiamarlo all'interno di loop o condizioni. Se ne hai bisogno, estrai un nuovo componente e sposta lo state al suo interno.
53
53
54
-
* `useId` **non dovrebbe essere usato per generare chiavi di cache** per [`use()`.](/reference/react/use) L'ID è stabile quando un componente è montato, ma potrebbe cambiare durante la renderizzazione. Le chiavi di cache dovrebbero essere generate dai tuoi dati.
54
+
* `useId` **non dovrebbe essere usato per generare chiavi di cache** per [use()](/reference/react/use) L'ID è stabile quando un componente è montato, ma potrebbe cambiare durante la renderizzazione. Le chiavi di cache dovrebbero essere generate dai tuoi dati.
55
55
56
56
* `useId` **non dovrebbe essere usato per generare le key** in una lista. [Le key dovrebbero essere generate dai tuoi dati.](/learn/rendering-lists#where-to-get-your-key)
57
57
58
-
* `useId` al momento non può essere usato nei [Server Component asincroni.](/reference/rsc/server-components#async-components-with-server-components)
58
+
* `useId` al momento non può essere usato negli [async Server Components](/reference/rsc/server-components#async-components-with-server-components).
59
59
60
60
---
61
61
@@ -103,7 +103,7 @@ In HTML classico, lo scriveresti così:
103
103
/>
104
104
</label>
105
105
<p id="password-hint">
106
-
The password should contain at least 18characters
106
+
La password deve contenere almeno 18caratteri
107
107
</p>
108
108
```
109
109
@@ -178,7 +178,7 @@ input { margin: 5px; }
178
178
179
179
<Pitfall>
180
180
181
-
Con il [rendering lato server,](/reference/react-dom/server) **`useId` richiede un albero di componenti identico sul server e sul client**. Se gli alberi che renderizzi sul server e sul client non corrispondono esattamente, gli ID generati non corrisponderanno.
181
+
Con la [renderizzazione lato server](/reference/react-dom/server) **`useId` richiede un albero di componenti identico sul server e sul client**. Se gli alberi che renderizzi sul server e sul client non corrispondono esattamente, gli ID generati non corrisponderanno.
182
182
183
183
</Pitfall>
184
184
@@ -188,7 +188,7 @@ Con il [rendering lato server,](/reference/react-dom/server) **`useId` richiede
188
188
189
189
Potresti chiederti perché `useId` è migliore di incrementare una variabile globale come `nextId++`.
190
190
191
-
Il vantaggio principale di `useId` è che React garantisce che funzioni con il [rendering lato server.](/reference/react-dom/server) Durante il rendering lato server, i tuoi componenti generano output HTML. In seguito, sul client, l'[hydration](/reference/react-dom/client/hydrateRoot) collega i tuoi gestori di eventi all'HTML generato. Affinché l'hydration funzioni, l'output del client deve corrispondere all'HTML del server.
191
+
Il vantaggio principale di `useId` è che React garantisce che funzioni con la [renderizzazione lato server](/reference/react-dom/server). Durante la renderizzazione lato server, i tuoi componenti generano output HTML. In seguito, sul client, l'[hydration](/reference/react-dom/client/hydrateRoot) collega i tuoi gestori di eventi all'HTML generato. Affinché l'hydration funzioni, l'output del client deve corrispondere all'HTML del server.
192
192
193
193
È molto difficile garantirlo con un contatore incrementale, perché l'ordine in cui i Client Component vengono idratati potrebbe non corrispondere all'ordine in cui l'HTML del server è stato emesso. Chiamando `useId`, ti assicuri che l'hydration funzioni e che l'output corrisponda tra server e client.
194
194
@@ -233,7 +233,7 @@ Questo ti permette di evitare di chiamare `useId` per ogni singolo elemento che
233
233
234
234
### Specificare un prefisso condiviso per tutti gli ID generati {/*specifying-a-shared-prefix-for-all-generated-ids*/}
235
235
236
-
Se renderizzi più applicazioni React indipendenti su una singola pagina, passa `identifierPrefix` come opzione alle tue chiamate a [`createRoot`](/reference/react-dom/client/createRoot#parameters) o [`hydrateRoot`.](/reference/react-dom/client/hydrateRoot) Questo garantisce che gli ID generati dalle due app diverse non entrino mai in conflitto, perché ogni identificatore generato con `useId` inizierà con il prefisso distinto che hai specificato.
236
+
Se renderizzi più applicazioni React indipendenti su una singola pagina, passa `identifierPrefix` come opzione alle tue chiamate a [`createRoot`](/reference/react-dom/client/createRoot#parameters) o [`hydrateRoot`](/reference/react-dom/client/hydrateRoot) Questo garantisce che gli ID generati dalle due app diverse non entrino mai in conflitto, perché ogni identificatore generato con `useId` inizierà con il prefisso distinto che hai specificato.
237
237
238
238
<Sandpack>
239
239
@@ -318,7 +318,7 @@ input { margin: 5px; }
318
318
319
319
### Usare lo stesso prefisso ID sul client e sul server {/*using-the-same-id-prefix-on-the-client-and-the-server*/}
320
320
321
-
Se [renderizzi più applicazioni React indipendenti sulla stessa pagina](#specifying-a-shared-prefix-for-all-generated-ids) e alcune di queste app sono renderizzate lato server, assicurati che l'`identifierPrefix` che passi alla chiamata a [`hydrateRoot`](/reference/react-dom/client/hydrateRoot) sul client sia lo stesso `identifierPrefix` che passi alle [API del server](/reference/react-dom/server) come [`renderToPipeableStream`.](/reference/react-dom/server/renderToPipeableStream)
321
+
Se [renderizzi più applicazioni React indipendenti sulla stessa pagina](#specifying-a-shared-prefix-for-all-generated-ids) e alcune di queste app sono renderizzate lato server, assicurati che l'`identifierPrefix` che passi alla chiamata a [`hydrateRoot`](/reference/react-dom/client/hydrateRoot) sul client sia lo stesso `identifierPrefix` che passi alle [API del server](/reference/react-dom/server) come [`renderToPipeableStream`](/reference/react-dom/server/renderToPipeableStream)
0 commit comments