{#key} pour forcer un nouveau rendu
Utilisez le bloc key pour détruire et recréer des composants lorsqu’une valeur change.
{#key} pour forcer un nouveau rendu est une leçon Sveltejs Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Sveltejs Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Sveltejs Academy comprend 4 leçons au total.
Le bloc key
{#key expr} détruit et recrée son contenu chaque fois que expr change. Il est utile lorsque vous voulez un composant neuf.
Redémarrer les animations
Enveloppez un élément animé dans {#key} pour rejouer la transition chaque fois que la clé change.
{#key id}
<div in:fade>{message}</div>
{/key}Réinitialiser l’état du composant
Enveloppez un composant enfant doté d’un état interne dans {#key id} pour réinitialiser complètement cet état lorsque l’identifiant change.
{#key currentUser.id}
<UserProfile user={currentUser} />
{/key}Différence avec la clé de each
Le bloc {#key} associe une clé à un seul élément ; {#each ... (key)} associe des clés aux éléments d’une liste.
Quand l’utiliser
Utilisez-le lorsque vous souhaitez réinitialiser un état interne complexe sans effacer manuellement chaque champ.
Coût en performance
Chaque changement de clé démonte et reconstruit le sous-arbre. Évitez d’envelopper de grands arbres si la clé change souvent.
Balise de fermeture
Fermez avec {/key}.
Utilisations courantes
Redémarrer des animations, réinitialiser des entrées non contrôlées, forcer une nouvelle récupération lors de la navigation vers une nouvelle entité.
Alternative : bind:this
Vous pouvez parfois réinitialiser l’état de manière impérative avec une référence. {#key} est plus clair pour les réinitialisations déclaratives.
Combiner avec des transitions
Associez-le à des transitions pour signaler visuellement et en douceur qu’un changement fondamental s’est produit.
À éviter pour les changements insignifiants
N’enveloppez pas le contenu purement réactif dans {#key} : Svelte le met déjà à jour efficacement.
Vérification rapide
Que fait {#key x} lorsque x change ?
Récapitulatif
{#key} force une destruction et une reconstruction complètes chaque fois que son expression change, ce qui est utile pour les réinitialisations et la répétition des animations.
Apprends HTML avec un tuteur IA — gratuit
Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.
- Cours
- 41
- Leçons
- 163
Questions Fréquemment Posées
La leçon « {#key} pour forcer un nouveau rendu » est-elle gratuite ?
Oui — le texte complet de « {#key} pour forcer un nouveau rendu » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Sveltejs Academy, passe à CoddyKit PRO. Le cours Sveltejs Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « {#key} pour forcer un nouveau rendu » ?
Utilisez le bloc key pour détruire et recréer des composants lorsqu’une valeur change. Tu pratiques Sveltejs Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Sveltejs Academy ?
Aucune expérience préalable n'est requise. Sveltejs Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.
Combien de temps prend la leçon « {#key} pour forcer un nouveau rendu » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Sveltejs Academy ?
Oui. Chaque leçon Sveltejs Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- {#if} {#else if} {#else}
- {#each} avec index et clé
- {#key} pour forcer un nouveau rendu
- {#each} imbriqués et mises à jour avec clé