⊗jsvuPmLpRc 35 of 72 menu

Reaktivitet i arrayer i Vue

Reaktivitet utlöses även vid förändringar i arrayer som visas genom v-for. Låt oss som exempel göra så att vid ett klick på en knapp läggs ett nytt element reaktivt till i arrayen och förändringarna omedelbart återspeglas på skärmen.

Låt oss implementera det som beskrivits. Låt oss anta att vi har en array:

data() { return { arr: ['a', 'b', 'c'], } }

Låt oss visa elementen i denna array i en loop:

<template> <p v-for="elem in arr"> {{ elem }} </p> </template>

Låt oss skapa en knapp, vid klick på vilken ett nytt element läggs till i arrayen:

<template> <p v-for="elem in arr"> {{ elem }} </p> <button @click="add">add</button> </template>

Låt oss implementera motsvarande metod:

methods: { add: function() { this.arr.push('xxx'); } }

En knapp är given. En array är given. Visa elementen i denna array som en lista ul. Gör så att vid ett klick på knappen läggs ett nytt punkt till i slutet av listan.

En knapp är given. En array är given. Visa elementen i denna array som en lista ul. Gör så att varje gång knappen klickas tas den första punkten i listan bort.

En knapp är given. En array är given. Visa elementen i denna array som en lista ul. Gör så att varje gång knappen klickas tas den sista punkten i listan bort.

En knapp är given. En array är given. Visa elementen i denna array som en lista ul. Gör så att varje gång knappen klickas tas den näst sista punkten i listan bort.

En knapp är given. En array är given. Visa elementen i denna array som en lista ul. Gör så att vid ett klick på knappen sorteras punkterna i listan.

En knapp är given. En array är given. Visa elementen i denna array som en lista ul. Gör så att vid ett klick på knappen ordnas punkterna i listan i omvänd ordning.

Undantag

På grund av begränsningar i JavaScript, kan Vue inte upptäcka följande förändringar i en array: direkt tilldelning av ett element via index: items[nyckel] = nyttVärde och explicit förändring av arrayens längd, till exempel: items.length = nyLängd.

Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa