Rrjedhja e të Dhënave e Njëkahshme në Vue
Të gjithë parametrat hyrës formojnë një lidhje të njëkahshme midis pronës së fëmijës dhe asaj prindërore: kur prona prindërore përditësohet - ajo do të transmetohet tek fëmija, por jo anasjelltas. Kjo parandalon ndryshimin aksidental të gjendjes prindërore nga komponentët fëmijë, gjë që mund ta vështirësojë kuptimin e rrjedhës së të dhënave të aplikacionit tuaj.
Përveç kësaj, sa herë që përditësohet komponenti prind, të gjithë parametrat hyrës të komponentit fëmij do të përditësohen me vlerat aktuale. Kjo do të thotë se nuk duhet të përpiqeni të modifikoni një parametër hyrës brenda komponentit fëmij. Nëse e bëni këtë, Vue do të shfaqë një paralajmërim në konsolë.
Zakonisht ekzistojnë dy raste kur lind tundimi për të modifikuar një parametër hyrës. Le t'i shqyrtojmë ato.
Rasti i parë
Parametri hyrës përdoret për të transmetuar një vlerë fillestare; komponenti fëmij dëshiron ta përdorë atë si një pronë lokale të të dhënave në të ardhmen. Në këtë rast, është më mirë të përcaktohet një pronë lokale në të dhëna që përdor vlerën e parametrit hyrës si vlerë fillestare:
props: ['initialCounter'],
data() {
return {
counter: this.initialCounter
};
}
Rasti i dytë
Parametri hyrës transmetohet si një vlerë e papërpunuar që duhet të transformohet. Në këtë rast, është më mirë të përcaktohet një pronë e llogaritur duke përdorur parametrin hyrës:
props: ['size'],
computed: {
normalizedSize: function() {
return this.size.trim().toLowerCase();
}
}
Shënim
Kini parasysh se objektet dhe vargjet në JavaScript transmetohen me referencë, prandaj nëse parametri hyrës është një varg ose objekt, atëherë ndryshimet brenda komponentit fëmij në atë objekt ose varg do të ndikojnë në gjendjen e prindit dhe Vue nuk është në gjendje t'ju paralajmërojë për këtë. Duhet shmangur çdo modifikim i parametrave hyrës, duke përfshirë objektet dhe vargjet, pasi injorimi i lidhjes së njëkahshme të të dhënave mund të çojë në rezultate të padëshiruara.