Esimerkki AngularJS-ohjaimet ng-Controllerilla

Mikä on ohjain AngularJS:ssä?

A ohjain AngularJS ottaa tiedot näkymästä, käsittelee tiedot ja lähettää sitten tiedot loppukäyttäjälle näytettävään näkymään. Controllerilla on ydinliiketoimintalogiikkasi. Ohjain käyttää tietomallia, suorittaa vaaditun käsittelyn ja välittää lähdön sitten näkymään, joka puolestaan ​​​​näkyy loppukäyttäjälle.

Mitä ohjain tekee Angularin näkökulmasta?

Seuraava on yksinkertainen määritelmä AngularJS-ohjaimen toiminnasta:

AngularJS-ohjaimen toiminta
AngularJS-ohjaimen toiminta
  • Rekisterinpitäjän ensisijainen vastuu on hallita näkymään siirtyviä tietoja. Laajuudella ja näkemyksellä on kaksisuuntainen viestintä.
  • Näkymän ominaisuudet voivat kutsua laajuuden "funktioita". Lisäksi näkymän tapahtumat voivat kutsua laajuuden "menetelmiä". Alla oleva koodinpätkä antaa yksinkertaisen esimerkin funktiosta.
    • - toiminto ($scope) joka määritetään määritettäessä säädintä ja sisäistä funktiota, jota käytetään palauttamaan $scope.firstName ja $scope.lastName ketjutus.
    • In angularjs, kun määrität funktion muuttujaksi, sitä kutsutaan menetelmäksi.

AngularJS-ohjaimen toiminta

  • Data siirtyy tällä tavalla rekisterinpitäjältä laajuuteen, ja sitten tiedot siirtyvät edestakaisin laajuudesta näkymään.
  • Tarkkailualuetta käytetään mallin paljastamiseen näkymään. Mallia voidaan muokata laajuudessa määritellyillä menetelmillä, jotka voidaan laukaista näkymän tapahtumien kautta. Voimme määritellä kaksisuuntaisen mallin sidoksen laajuudesta malliin.
  • Ohjaimia ei tulisi ihanteellisesti käyttää DOM:n käsittelyyn. Tämä pitäisi tehdä direktiiveillä, joita näemme myöhemmin.
  • Paras käytäntö on, että ohjaimet perustuvat toimivuuteen. Jos sinulla on esimerkiksi lomake syötettä varten ja tarvitset sitä varten ohjaimen, luo ohjain nimeltä "lomakeohjain".

Perusohjaimen rakentaminen AngularJS:ssä

Alla on vaiheet ohjaimen luomiseksi AngularJS:ssä:

Vaihe 1) Luo perus-HTML-sivu

Ennen kuin aloitamme ohjaimen luomisen, meidän on ensin oltava HTML-perussivun asetukset kunnossa.

Alla oleva koodinpätkä on yksinkertainen HTML-sivu, jonka otsikko on "Tapahtumien rekisteröinti" ja jossa on viittauksia tärkeisiin kirjastoihin, kuten Bootstrap, jquery ja Angular.

Rakenna perusohjain AngularJS:ssä

  1. Lisäämme viittauksia bootstrap CSS -tyylisivuihin, joita käytetään bootstrap-kirjastojen yhteydessä.
  2. Lisäämme viittauksia angularjs-kirjastoihin. Joten nyt kaikki, mitä teemme angular.js:n kanssa jatkossa, viitataan tästä kirjastosta.
  3. Lisäämme viittauksia bootstrap-kirjastoon, jotta verkkosivumme reagoisi paremmin tietyille säätimille.
  4. Olemme lisänneet viittauksia jquery-kirjastoihin, joita käytetään DOM-käsittelyyn. Angular vaatii tätä, koska osa Angularin toiminnoista on riippuvaisia ​​tästä kirjastosta.

Oletuksena yllä oleva koodinpätkä on läsnä kaikissa esimerkeissämme, jotta voimme näyttää vain tietyn angularJS-koodin seuraavissa osissa.

Vaihe 2) Tarkista tiedostot ja tiedostorakenne

Toiseksi tarkastellaan tiedostojamme ja tiedostorakennetta, joista aiomme aloittaa kurssimme ajan.

Rakenna perusohjain AngularJS:ssä

  1. Ensin erottelemme tiedostomme kahteen kansioon, kuten tehdään minkä tahansa tavanomaisen verkkosovelluksen kanssa. Meillä on "CSS"-kansio. Se sisältää kaikki peräkkäiset tyylisivutiedostomme, ja sitten meillä on "lib"-kansiomme, jossa on kaikki JavaKäsikirjoitus tiedostoja.
  2. Bootstrap.css-tiedosto sijoitetaan CSS-kansioon ja sitä käytetään lisäämään sivustollemme hyvän ulkoasun ja tuntuman.
  3. Angular.js on päätiedostomme, joka ladattiin angularJS-sivustolta ja säilytettiin lib-kansiossamme.
  4. App.js-tiedosto sisältää koodimme ohjaimille.
  5. Bootstrap.js-tiedostoa käytetään täydentämään bootstrap.cs-tiedostoa bootstrap-toiminnon lisäämiseksi verkkosovellukseemme.
  6. Jquery-tiedostoa käytetään lisäämään DOM-käsittelytoimintoja sivustollemme.

Vaihe 3) Käytä AngularJS-koodia tulosteen näyttämiseen

Haluamme tässä vain näyttää sanat "AngularJS" sekä tekstimuodossa että tekstiruudussa, kun sivua tarkastellaan selaimessa. Katsotaanpa esimerkkiä angular.js:n käyttämisestä tähän:

Rakenna perusohjain AngularJS:ssä

<!DOCTYPE html>
<html>
<head>
	<meta chrset="UTF 8">
	<link rel="stylesheet" href="css/bootstrap.css"/>
</head>
<body>
<h1> Guru99 Global Event</h1>
<script src="https://code.angularjs.org/1.6.9/angular.js"></script>
<script src="lib/angular.js"></script>
<script src="lib/bootstrap.js"></script>
<script src="lib/jquery-1.11.3.min.js"></script>

<div ng-app="DemoApp" ng-controller="DemoController">

	Tutorial Name : <input type="text" ng-model="tutorialName"><br>

	This tutorial is {{tutorialName}}
</div>
<script>
	var app = angular.module('DemoApp',[]);

	app.controller('DemoController', function($scope){
	$scope.tutorialName = "Angular JS";
	});
</script>

</body>
</html>

Koodin selitys:

  1. - ng-app avainsanaa käytetään osoittamaan, että tätä sovellusta tulisi pitää kulmasovelluksena. Kaikki, mikä alkaa etuliitteellä 'ng' tunnetaan nimellä Direktiivi. "DemoApp" on Angular.JS-sovelluksellemme annettu nimi.
  2. Olemme luoneet div-tunnisteen ja tähän tagiin olemme lisänneet ng-controller-direktiivin sekä ohjaimemme nimen "DemoController". Pohjimmiltaan tämä tekee div-tagistamme mahdollisuuden käyttää Demo-ohjaimen sisältöä. Sinun on mainittava direktiivin mukainen ohjaimen nimi varmistaaksesi, että pääset käyttämään ohjaimessa määritettyjä toimintoja.
  3. Luomme mallisidontaa käyttämällä ng-model-direktiiviä. Tämä tarkoittaa, että se sitoo opetusohjelman nimen tekstiruudun jäsenmuuttujaan "tutorialName".
  4. Luomme jäsenmuuttujan nimeltä "tutorialName", jota käytetään näyttämään tiedot, jotka käyttäjä kirjoittaa Tutorial Name -tekstiruutuun.
  5. Olemme luomassa moduulia, joka liitetään DemoApp-sovellukseemme. Joten tästä moduulista tulee nyt osa sovellustamme.
  6. Moduulissa määritämme funktion, joka määrittää oletusarvon "AngularJS" tutorialName-muuttujallemme.

Jos komento suoritetaan onnistuneesti, seuraava tulos näytetään, kun suoritat koodin selaimessa.

lähtö:

Rakenna perusohjain AngularJS:ssä

Koska annoimme muuttujalle tutorialName arvon "Angular JS", tämä näkyy tekstikentässä ja pelkällä tekstirivillä.

Kuinka määrittää menetelmät AngularJS-ohjaimissa

Normaalisti ohjaimessa halutaan määrittää useita menetelmiä liiketoimintalogiikan erottamiseksi.

Oletetaan esimerkiksi, että jos haluat, että ohjain tekee kaksi perusasiaa,

  1. Lisää 2 numeroa
  2. Suorita 2 luvun vähennyslasku

Tämän jälkeen luot ihanteellisesti ohjaimen sisään kaksi menetelmää, joista toinen suorittaa yhteenlaskua ja toinen vähennyslaskua varten.

Katsotaanpa yksinkertainen esimerkki siitä, kuinka voit määrittää mukautettuja menetelmiä Angular.JS-ohjaimessa. Ohjain yksinkertaisesti palauttaa merkkijonon.

Määritä menetelmät AngularJS-ohjaimissa

<!DOCTYPE html>
<html>
<head>
	<meta chrset="UTF 8">
	<title>Event Registration</title>
	<link rel="stylesheet" href="css/bootstrap.css"/>
</head>
<body ng-app="DemoApp">
<h1> Guru99 Global Event</h1>
<script src="https://code.angularjs.org/1.6.9/angular.js"></script>
<script src="lib/angular.js"></script>
<script src="lib/bootstrap.js"></script>
<script src="lib/jquery-1.11.3.min.js"></script>

<div ng-app="DemoApp" ng-controller="DemoController">
	Tutorial Name :<input type="text" ng-model="tutorialName"><br>
	<br>
	This tutorial is {{tutorialName}}	
</div>

<script>
var app = angular.module('DemoApp', []);
app.controller('DemoController', function($scope) {
    $scope.tutorialName = "Angular JS";
	$scope.tName = function() {
        return $scope.tName;
    };
});
</script>	
</body>
</html>

Koodin selitys:

  1. Tässä määrittelemme vain funktion, joka palauttaa "AngularJS"-merkkijonon. Funktio liitetään laajuusobjektiin tutorialName-nimisen jäsenmuuttujan kautta.
  2. Jos komento suoritetaan onnistuneesti, seuraava tulos näytetään, kun suoritat koodin selaimessa.

lähtö:

Määritä menetelmät AngularJS-ohjaimissa

Esimerkki AngularJS-ohjaimesta ng-Controllerilla

Katsotaanpa esimerkkiä "HelloWorldistä", jossa kaikki toiminnot on sijoitettu yhteen tiedostoon. Nyt on aika sijoittaa ohjaimen koodi erillisiin tiedostoihin.

Tee tämä seuraavasti:

Vaihe 1) Lisää app.js-tiedostoon seuraava koodi ohjaimellesi

AngularJS-ohjain ng-Controllerilla

angular.module('app',[]).controller('HelloWorldCtrl',function($scope)
{
	$scope.message = "Hello World"
});

Yllä oleva koodi tekee seuraavat asiat:

  1. Määrittele "sovellus"-niminen moduuli, joka pitää ohjaimen ja ohjaimen toiminnot.
  2. Luo ohjain, jonka nimi on "HelloWorldCtrl". Tätä ohjainta käytetään "Hello World" -viestin näyttämiseen.
  3. Kohdeobjektia käytetään tiedon siirtämiseen ohjaimesta näkymään. Joten meidän tapauksessamme laajuusobjektia käytetään "message"-nimisen muuttujan säilyttämiseen.
  4. Määrittelemme muuttujaviestiä ja annamme sille arvon "Hello World".

Vaihe 2) Lisää nyt Sample.html-tiedostoosi div-luokka, joka sisältää käskyn ng-controller, ja lisää sitten viittaus jäsenmuuttujaan "message".

Älä myöskään unohda lisätä viittausta komentosarjatiedostoon app.js, jossa on ohjaimesi lähdekoodi.

AngularJS-ohjain ng-Controllerilla

<!DOCTYPE html>
<html ng-app="app">
<head>
	<meta chrset="UTF 8">
	<title>Event Registration</title>
	<link rel="stylesheet" href="css/bootstrap.css"/>
</head>
<body>
<h1> Guru99 Global Event</h1>
<div class="container">
	<div ng-controller="HelloWorldCtrl">{{message}}</div>
</div>

<script src="https://code.angularjs.org/1.6.9/angular.js"></script>
<script src="lib/angular.js"></script>
<script src="lib/bootstrap.js"></script>
<script src="lib/jquery-1.11.3.min.js"></script>

<script src="app.js"></script>

</body>
</html>

Jos yllä oleva koodi on syötetty oikein, seuraava tulos näytetään, kun suoritat koodisi selaimessa.

lähtö:

AngularJS-ohjain ng-Controllerilla

Yhteenveto

  • Ohjaimen ensisijainen vastuu on luoda laajuusobjekti, joka vuorostaan ​​välitetään näkymään
  • Kuinka rakentaa yksinkertainen ohjain ng-app-, ng-controller- ja ng-model-direktiiveillä
  • Kuinka lisätä mukautettuja menetelmiä ohjaimeen, jota voidaan käyttää erilaisten toimintojen erottamiseen angularjs-moduulissa.
  • Ohjaimet voidaan määrittää ulkoisiin tiedostoihin erottamaan tämä kerros View-tasosta. Tämä on yleensä paras käytäntö verkkosovelluksia luotaessa.