Vue-da bir ugurly maglumat akyşy
Ähli girizilmeler çaganyň aýratynlygy bilen enesiniňky arasynda bir ugurly baglanyşyk döredýär: enesiniň aýratynlygy täzelenende - ol çaganyňkyna geçiriler, ýöne tersine däl. Bu çaga komponentleriň tötänleýin enesiniň ýagdaýyny üýtgetmeginiň öňüni alyar, bu bolsa programmanyňyzyň maglumat akyşyny düşünmegi kynlaşdyryp biler.
Şeýle hem, her gezek enesi komponent täzelenende, çaga komponentiň ähli girizilmeleri aktual bahalar bilen täzelenjek. Bu şuny aňladýar siz çaga komponentiň içinde girizilmeni üýtgetmäge synanyşmaly dälsiňiz. Eger şeýle etseňiz, Vue konsolda duýduryş görkezer.
Adatça, girizilmeni üýtgetmek islegi döýän iki ýagdaý duş gelýär. Geliň olara seredeliň.
Birinji ýagdaý
Girizilme başlangyç bahany geçirmek üçin ulanylýar; çaga komponent ony soňrak ýerli maglumat aýratynlygy hökmünde ulanylmak isleýär. Bu ýagda iň gowusy, maglumatlarda girizilmeniň bahasyny başlangyç hökmünde ulanyan ýerli aýratynlygy kesgitlemekdir:
props: ['initialCounter'],
data() {
return {
counter: this.initialCounter
};
}
Ikinji ýagdaý
Girizilme gaýtadan işlenmeli çygylma baha hökmünde geçirilýär. Bu ýagda iň gowusy, girizilmeni ulanyp hasaplanýan aýratynlygy kesgitlemekdir:
props: ['size'],
computed: {
normalizedSize: function() {
return this.size.trim().toLowerCase();
}
}
Bellik
Üns beriň, JavaScript-däki obýektler we massiwler salgy boýunça geçirilýär, şonuň üçin eger girizilme massiw ýa-da obýekt bolsa, onda çaga komponentiň içindäki şol obýektiň ýa-da massiwiň üýtgemeleri enesiniň ýagdaýyna täsir eder we Vue bu barada duýdurup bilmeýär. Her bir girizilme üýtgeşmesinden, obýektler we massiwler hem goşmak bilen, gaçynmaly, sebäbi maglumatlaryň bir ugurly baglanyşygynyň üns berilmezligi ýatylmaz netijelere getirip biler.