Kaj je $ Scope v AngularJS? Vadnica s primerom

Kazalo:

Anonim

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:

  1. Ime modula je "app"
  2. Ime krmilnika je "HelloWorldCntrl"
  3. Predmet obsega je glavni objekt, ki se uporablja za posredovanje informacij iz krmilnika v pogled.
  4. 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:

  1. Ustvarjamo vedenje, imenovano »polnoime«. To vedenje je funkcija, ki sprejema 2 parametra (ime, priimek).
  2. Nato vedenje vrne združevanje teh dveh parametrov.
  3. 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 $rootScopeje 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