⊗jsvuPmLpKA 34 of 72 menu

Het key attribuut in Vue

Bij het bijwerken van een lijst met elementen door Vue, weergegeven door de v-for richtlijn, wordt standaard een "in-place" update strategie gebruikt. Als de volgorde van de array-elementen of objecteigenschappen is veranderd, zal Vue geen DOM-elementen verplaatsen, maar simpelweg elk element "in-place" bijwerken zodat het de nieuwe gegevens op de bijbehorende index weergeeft.

Om Vue te helpen bepalen hoe de identiteit van elk element vastgesteld moet worden, en zo bestaande elementen te hergebruiken en opnieuw te ordenen, moet een uniek key attribuut worden opgegeven voor elk element.

Zonder keys gebruikt Vue een algoritme dat elementverplaatsingen minimaliseert en zoveel mogelijk zal proberen elementen van hetzelfde type te wijzigen/hergebruiken. Bij gebruik van keys zullen elementen worden herordend in overeenstemming met de verandering in de volgorde van de keys, en elementen waarvan de keys ontbreken, zullen altijd worden verwijderd/vernietigd.

Het wordt aanbevolen om altijd een key attribuut op te geven met v-for, behalve wanneer de herhaalde DOM-inhoud eenvoudig is, of wanneer u bewust vertrouwt op de standaard update strategie voor prestatieverbetering.

Over het algemeen rijst de kwestie van het toevoegen van keys bij het doorlopen van een array van objecten. In dit geval is een van de keys van het object een uniek veld, bijvoorbeeld id:

data() { return { users: [ { id: 1, name: 'name1', surn: 'surn1', }, { id: 2, name: 'name2', surn: 'surn2', }, { id: 3, name: 'name3', surn: 'surn3', }, ] } }

Laten we de gegeven array doorlopen met een loop, en de bijbehorende keys specificeren:

<template> <p v-for="user in users" :key="user.id"> {{ user.name }} {{ user.surn }} </p> </template>

Doorloop de volgende array met een loop en toon de productnamen in de vorm van een ul lijst:

data() { return { products: [ { id: 1, name: 'product1', }, { id: 2, name: 'product2', }, { id: 3, name: 'product3', }, ] } }
Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren