⊗jsvuPmCmUDF 64 of 72 menu

Jednosmerni tok podataka u Vue

Svi ulazni parametri formiraju jednosmerno vezivanje između podređenog svojstva i roditeljskog: kada se roditeljsko svojstvo ažurira – ono će biti prosledjeno podređenom, ali ne i obrnuto. Ovo sprečava da podređeni komponenti slučajno izmene stanje roditelja, što može otežati razumevanje toka podataka vaše aplikacije.

Pored toga, svaki put kada se ažurira roditeljski komponent, svi ulazni parametri podređenog komponenta će biti ažurirani najsvežijim vrednostima. Ovo znači da ne treba da pokušavate da menjate ulazni parametar unutar podređenog komponenta. Ako to uradite, Vue će prikazati upozorenje u konzoli.

Obično se javljaju dva slučaja kada se pojavi iskušenje da se izmeni ulazni parametar. Hajde da ih razmotrimo.

Prvi slučaj

Ulazni parametar se koristi za prosleđivanje početne vrednosti; podređeni komponent želi da ga koristi kao lokalno svojstvo podataka ubuduće. U ovom slučaju je najbolje definisati lokalno svojstvo u 'data', koje koristi vrednost ulaznog parametra kao početnu:

props: ['initialCounter'], data() { return { counter: this.initialCounter }; }

Drugi slučaj

Ulazni parametar se prosleđuje kao sirova vrednost koju je potrebno transformisati. U ovom slučaju je najbolje definisati izračunato svojstvo koristeći ulazni parametar:

props: ['size'], computed: { normalizedSize: function() { return this.size.trim().toLowerCase(); } }

Napomena

Obratite pažnju da se objekti i nizovi u JavaScript-u prosleđuju po referenci, tako da ako je ulazni parametar niz ili objekat, onda će promene unutar podređenog komponenta tog objekta ili niza uticati na stanje roditelja i Vue nije u mogućnosti da upozori na to. Trebalo bi izbegavati bilo kakve mutacije ulaznih parametara, uključujući objekte i nizove, jer zanemarivanje jednosmernog vezivanja podataka može dovesti do neželjenih posledica.

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij