Apakah nuansa prototaip skop / warisan prototaip dalam AngularJS?
Warisan Prototaip dalam JavaScript
- Warisan prototaip ialah mekanisme di mana objek mewarisi sifat daripada prototaipnya.
- Dalam AngularJS, skop biasanya mewarisi prototaip daripada skop induknya.
Pengecualian
- Arahan dengan skop: { ... } buat isolasi skop yang tidak diwarisi secara prototaip daripada ibu bapa mereka.
Nuansa
Sembunyikan Harta Skop Kanak-kanak
- Biasanya, perubahan pada sifat skop kanak-kanak tidak menjejaskan skop induk sifat.
- Walau bagaimanapun, apabila mengikat data 2 hala kepada primitif dalam skop induk daripada skop kanak-kanak, skop kanak-kanak mencipta sifatnya sendiri yang menyembunyikan harta induk yang sama nama.
Penyelesaian
- Gunakan objek untuk primitif dalam skop induk (cth., parentObj.someProp).
- Gunakan $parent.parentScopeProperty.
- Tentukan fungsi dalam skop ibu bapa dan panggilnya daripada anak.
Ng-repeat
- Ng-repeat mencipta skop anak dan memberikan nilai item kepada sifat baharu pada skop kanak-kanak tersebut.
- Mengikat kepada primitif dalam tatasusunan skop induk daripada anak ng-ulang skop menghasilkan sifat skop anak yang bebas daripada tatasusunan induk.
- Untuk mengelakkan perkara ini, gunakan tatasusunan objek dalam skop induk dan ikat pada sifat objek dalam ng-ulang.
Asingkan Skop
Skop Terskop
- Dicipta oleh arahan dengan transclude: true.
- Prototaip mewarisi daripada skop ibu bapa.
- Adik beradik untuk mengasingkan skop jika kedua-duanya wujud dalam arahan.
Ringkasan
- Kebanyakan skop prototaip diwarisi daripada skop induk.
- Pengecualian wujud, seperti sebagai skop terpencil yang dicipta oleh arahan.
- Nuansa yang perlu sedar termasuk penyembunyian harta skop kanak-kanak dan pertimbangan khas untuk ng-repeat.
Atas ialah kandungan terperinci Bagaimanakah Warisan Prototaip Berfungsi dalam Skop AngularJS, dan Apakah Perangkap Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!