AngularJS-direktiver: ng-init, ng-app, ng-model og ng-repeat

Hva er Direktiv i AngularJS?

A Direktiv i AngularJS er en kommando som gir HTML ny funksjonalitet. Nรฅr Angular gรฅr gjennom HTML-koden, vil den fรธrst finne direktivene pรฅ siden og deretter analysere HTML-siden deretter. Et enkelt eksempel pรฅ et AngularJS-direktiv, som vi har sett i tidligere kapitler, er "ng-modelldirektivet". Dette direktivet brukes for รฅ binde vรฅr datamodell til vรฅrt syn.

OBS: Du kan ha grunnleggende Angular-kode pรฅ en HTML-side med direktivene ng-init, ng-repeat og ng-model uten behov for kontrollere. Logikken bak disse direktivene finnes i Angular.js-filen som leveres av GoogleKontrollere er neste nivรฅ av angulรฆre programmeringskonstruksjoner som tillater forretningslogikk, men som nevnt er det ikke obligatorisk รฅ ha en kontroller for at en applikasjon skal vรฆre en angulรฆr applikasjon.

Hvordan lage direktiver i AngularJS

Som vi definerte i introduksjonen, er AngularJS-direktiver en mรฅte รฅ utvide funksjonaliteten til HTML.

Det er definert 4 direktiver i AngularJS.

Nedenfor er listen over AngularJS-direktivene sammen med eksempler gitt for รฅ forklare hver enkelt av dem.

ng-app i AngularJS

Dette brukes til รฅ initialisere en Angular.JS-applikasjon. Nรฅr dette direktivet er pรฅ plass pรฅ en HTML-side, forteller det i utgangspunktet Angular at denne HTML-siden er en angular.js-applikasjon.

Eksempel pรฅ np-app

Eksemplet nedenfor viser hvordan du bruker ng-app-direktivet. I dette eksemplet skal vi ganske enkelt vise hvordan du gjรธr en vanlig HTML-applikasjon til en angularJS-applikasjon.

ng-app i AngularJS

<!DOCTYPE html>
<html>
<head>
    <meta chrset="UTF 8">
    <title>Event Registration</title>
</head>
<body>

<script src="https://code.angularjs.org/1.6.9/angular-route.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.min.js"></script>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>

<h1> Guru99 Global Event</h1>

<div ng-app="">

    Tutorial Name : {{ "Angular" + "JS"}}

</div>

</body>
</html>

Code Forklaring:

  1. "ng-app"-direktivet er lagt til div-taggen vรฅr for รฅ indikere at denne applikasjonen er en angular.js-applikasjon. Merk at ng-app-direktivet kan brukes pรฅ hvilken som helst tag, sรฅ det kan ogsรฅ settes inn i body-taggen.
  2. Fordi vi har definert denne applikasjonen som en angular.js-applikasjon, kan vi nรฅ bruke angular.js-funksjonaliteten. I vรฅrt tilfelle bruker vi uttrykk for รฅ bare sette sammen 2 strenger.

Hvis koden utfรธres vellykket, vil fรธlgende utdata vises nรฅr du kjรธrer koden i nettleseren.

Utgang:

ng-app i AngularJS

Utdataene viser tydelig utdataene til uttrykket som bare ble muliggjort fordi vi definerte applikasjonen som en angularjs-applikasjon.

ng-init i AngularJS

Dette brukes til รฅ initialisere applikasjonsdata. Noen ganger kan du kreve noen lokale data for applikasjonen din, dette kan gjรธres med ng-init-direktivet.

Eksempel pรฅ ng-init

Eksemplet nedenfor viser hvordan du bruker ng-init-direktivet.

I dette eksemplet skal vi lage en variabel kalt "TutorialName" ved รฅ bruke ng-init-direktivet og vise verdien til den variabelen pรฅ siden.

ng-init i AngularJS

<!DOCTYPE html>
<html>
<head>
    <meta chrset="UTF 8">
    <title>Event Registration</title>
</head>
<body>

<script src="https://code.angularjs.org/1.6.9/angular-route.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.min.js"></script>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>

<h1> Guru99 Global Event</h1>

<div ng-app="" ng-init="TutorialName='Angular JS'">

    Tutorial Name : {{ TutorialName}}

</div>

</body>
</html>

Code Forklaring:

  1. ng-init-direktivet legges til div-taggen vรฅr for รฅ definere en lokal variabel kalt "TutorialName" og verdien gitt til dette er "AngularJS".
  2. Vi bruker uttrykk i AngularJs for รฅ vise utdataene til variabelnavnet "TutorialName" som ble definert i vรฅrt ng-init-direktiv.

Hvis koden utfรธres vellykket, vil fรธlgende utdata vises nรฅr du kjรธrer koden i nettleseren.

Utgang:

ng-init i AngularJS

I utgangen,

  • Resultatet viser tydelig resultatet av uttrykket som inneholder strengen "AngularJS". Dette er som et resultat av at strengen "AngularJS" blir tildelt variabelen 'TutorialName' i ng-init-delen.

ng-modell i AngularJS

Og til slutt har vi ng-modelldirektivet, som brukes til รฅ binde verdien av en HTML-kontroll til applikasjonsdata. Eksemplet nedenfor viser hvordan du bruker ng-modelldirektivet.

Eksempel pรฅ ng-modell

I dette eksemplet,

  • Vi skal lage 2 variabler kalt "mengde" og "pris". Disse variablene kommer til รฅ vรฆre bundet til 2 tekstinntastingskontroller.
  • Vi skal da vise totalbelรธpet basert pรฅ multiplikasjon av bรฅde pris- og kvantitetsverdier.

ng-modell i AngularJS

<!DOCTYPE html>
<html>
<head>
    <meta chrset="UTF 8">
    <title>Event Registration</title>
</head>
<body>

<script src="https://code.angularjs.org/1.6.9/angular-route.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.min.js"></script>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>

<h1> Guru99 Global Event</h1>

<div ng-app="" ng-init="quantity=1;price=5">

    People : <input type="number" ng-model="quantity">

    Registration Price : <input type="number" ng-model="price">

    Total : {{quantity * price}}

</div>

</body>
</html>

Code Forklaring:

  1. ng-init-direktivet legges til vรฅr div-tag for รฅ definere 2 lokale variabler; den ene kalles "kvantitet" og den andre er "pris".
  2. Nรฅ bruker vi ng-modelldirektivet til รฅ binde tekstboksene "People" og "Registration price" til vรฅre lokale variabler "quantity" og "price" henholdsvis.
  3. Til slutt viser vi totalen via et uttrykk, som er multiplikasjonen av mengde- og prisvariablene.

Hvis koden utfรธres vellykket, vil fรธlgende utdata vises nรฅr du kjรธrer koden i nettleseren.

Utgang:

ng-modell i AngularJS

  • Utgangen viser tydelig multiplikasjonen av verdiene for personer og registreringspris.

Nรฅ, hvis du gรฅr til tekstboksene og endrer verdien pรฅ prisen for personer og registrering, vil totalen automatisk endres.

ng-modell i AngularJS

  • Ovennevnte utgang viser bare kraften til databinding i angularJs, som oppnรฅs ved bruk av ng-modell direktiv.

ng-gjenta i AngularJS

Dette brukes til รฅ gjenta et HTML-element. Eksemplet nedenfor viser hvordan du bruker ng-gjenta direktiv.

Eksempel pรฅ ng-repetisjon

I dette eksemplet,

  • Vi skal ha en rekke kapittelnavn i en matrisevariabel og
  • bruk deretter ng-repeat-direktivet for รฅ vise hvert element i matrisen som et listeelement

ng-gjenta i AngularJS

<!DOCTYPE html>
<html>
<head>
    <meta chrset="UTF 8">
    <title>Event Registration</title>
</head>
<body>

<script src="https://code.angularjs.org/1.6.9/angular-route.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.min.js"></script>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>

<h1> Guru99 Global Event</h1>

<div ng-app="" ng-init="chapters=['Controllers','Models','Filters']">
    <ul>
        <li ng-repeat="names in chapters">
            {{names}}
        </li>
    </ul>

</div>

</body>
</html>

Code Forklaring:

  1. ng-init-direktivet legges til vรฅr div-tag for รฅ definere en variabel kalt "kapitler", som er en matrisevariabel som inneholder 3 strenger.
  2. Elementet ng-repeat brukes ved รฅ deklarere en innebygd variabel kalt "navn" og gรฅ gjennom hvert element i kapittelmatrisen.
  3. Til slutt viser vi verdien av den lokale innebygde variabelen "navn".

Hvis koden utfรธres vellykket, vil fรธlgende utdata vises nรฅr du kjรธrer koden i nettleseren.

Utgang:

ng-gjenta i AngularJS

  • Utdataene ovenfor viser bare at ng-repeat-direktivet tok hver verdi i matrisen kalt "kapitler" og opprettet HTML-listeelementer for hvert element i matrisen.

Sammendrag

  • Direktiver brukes for รฅ utvide funksjonaliteten til HTML. Angular gir innebygde direktiver som f.eks
    • ng-app โ€“ Dette brukes til รฅ initialisere en vinkelapplikasjon.
    • ng-init โ€“ Dette brukes til รฅ lage applikasjonsvariabler
    • ng-modell โ€“ Dette brukes til รฅ binde HTML-kontroller til applikasjonsdata
    • ng-repeat โ€“ Brukes til รฅ gjenta elementer ved รฅ bruke vinkel.

Oppsummer dette innlegget med: