Kaj je $ obseg v AngularJS?
$ obseg v AngularJS je vgrajen objekt, ki v osnovi veže "krmilnik" in "pogled". V obsegu znotraj krmilnika lahko definirate spremenljivke članov, do katerih lahko nato dostopa pogled.
Razmislite o spodnjem primeru:
angular.module('app',[]).controller('HelloWorldCntrl'function($scope){$scope.message = "Hello World"});
Razlaga kode:
- Ime modula je "app"
- Ime krmilnika je "HelloWorldCntrl"
- Predmet obsega je glavni objekt, ki se uporablja za posredovanje informacij iz krmilnika v pogled.
- Spremenljivka člana je dodana predmetu obsega
Nastavitev ali dodajanje vedenja
Če se želimo odzvati na dogodke ali izvesti nekakšno računanje / obdelavo v pogledu, moramo obsegu zagotoviti vedenje.
Predmeti obsega se dodajo vedenja, da se odzovejo na določene dogodke, ki jih lahko sproži pogled. Ko je vedenje definirano v krmilniku, lahko do njega dostopa pogled.
Oglejmo si primer, kako lahko to dosežemo.
Guru99 Guru99 Global Event
{{fullName("Guru","99")}}
Razlaga kode:
- Ustvarjamo vedenje, imenovano »polnoime«. To vedenje je funkcija, ki sprejema 2 parametra (ime, priimek).
- Nato vedenje vrne združevanje teh dveh parametrov.
- V pogledu prikličemo vedenje in posredujemo dve vrednosti "Guru" in "99", ki se kot vedenje prenese kot parametra.
Če se ukaz uspešno izvede, se pri zagonu kode v brskalniku prikaže naslednji izhod.
Izhod:
V brskalniku boste videli združitev obeh vrednosti Guru & 99, ki sta bili posredovani vedenju v krmilniku.
Povzetek
- Objektu obsega je mogoče dodati različne spremenljivke članov, na katere se je nato mogoče sklicevati v pogledu.
- Vedenje je mogoče dodati za delo z dogodki, ki so ustvarjeni za dejanja, ki jih izvede uporabnik.
- Angularjs
$rootScope
je obseg celotne aplikacije. Aplikacija ima lahko samo en $ rootScope in se uporablja kot globalna spremenljivka. V Angular JS $ obsegi so podrejeni obsegi, $ rootScope pa nadrejeni obseg