AngularJS Direktifleri: ng-init, ng-app, ng-model ve ng-repeat
AngularJS'de Yรถnerge nedir?
A Yรถnerge AngularJS'de HTML'ye yeni iลlevler kazandฤฑran bir komuttur. Angular, HTML kodunu incelediฤinde, รถnce sayfadaki yรถnergeleri bulacak ve ardฤฑndan HTML sayfasฤฑnฤฑ buna gรถre ayrฤฑลtฤฑracaktฤฑr. Daha รถnceki bรถlรผmlerde gรถrdรผฤรผmรผz AngularJS direktifinin basit bir รถrneฤi โng-model direktifidirโ. Bu yรถnerge veri modelimizi gรถrรผnรผmรผmรผze baฤlamak iรงin kullanฤฑlฤฑr.
Not: `ng-init`, `ng-repeat` ve `ng-model` yรถnergelerini kullanarak, denetleyicilere ihtiyaรง duymadan HTML sayfasฤฑnda temel Angular koduna sahip olabilirsiniz. Bu yรถnergelerin mantฤฑฤฤฑ, `Angular.js` dosyasฤฑnda yer alฤฑr ve bu dosya `Angular.js` tarafฤฑndan saฤlanฤฑr. GoogleDenetleyiciler (controllers), iล mantฤฑฤฤฑna olanak saฤlayan bir sonraki seviye Angular programlama yapฤฑlarฤฑdฤฑr, ancak belirtildiฤi gibi bir uygulamanฤฑn Angular uygulamasฤฑ olmasฤฑ iรงin denetleyiciye sahip olmasฤฑ zorunlu deฤildir.
AngularJS'de Direktifler Nasฤฑl Oluลturulur
Giriลte tanฤฑmladฤฑฤฤฑmฤฑz gibi AngularJS direktifleri, AngularJS'in iลlevselliฤini geniลletmenin bir yoludur. HTML.
Tanฤฑmlanmฤฑล 4 direktif vardฤฑr. angularjs.
Aลaฤฤฑda AngularJS direktiflerinin listesi ve bunlarฤฑn her birini aรงฤฑklamak iรงin saฤlanan รถrnekler yer almaktadฤฑr.
AngularJS'de ng-app
Bu, bir Angular.JS uygulamasฤฑnฤฑ baลlatmak iรงin kullanฤฑlฤฑr. Bu yรถnerge bir HTML sayfasฤฑna yerleลtirildiฤinde, temel olarak Angular'a bu HTML sayfasฤฑnฤฑn bir angular.js uygulamasฤฑ olduฤunu sรถyler.
Np-app รถrneฤi
Aลaฤฤฑdaki รถrnek ng-app direktifinin nasฤฑl kullanฤฑlacaฤฤฑnฤฑ gรถstermektedir. Bu รถrnekte, normal bir HTML uygulamasฤฑnฤฑn nasฤฑl angularJS uygulamasฤฑna dรถnรผลtรผrรผleceฤini gรถstereceฤiz.
<!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 Aรงฤฑklama:
- Bu uygulamanฤฑn bir angular.js uygulamasฤฑ olduฤunu belirtmek iรงin div etiketimize โng-appโ direktifi eklenmiลtir. Ng-app direktifinin herhangi bir etikete uygulanabileceฤini, dolayฤฑsฤฑyla gรถvde etiketine de yerleลtirilebileceฤini unutmayฤฑn.
- Bu uygulamayฤฑ angular.js uygulamasฤฑ olarak tanฤฑmladฤฑฤฤฑmฤฑz iรงin artฤฑk angular.js iลlevselliฤinden faydalanabiliyoruz. Bizim durumumuzda, 2 dizeyi basitรงe birleลtirmek iรงin ifadeler kullanฤฑyoruz.
Kod baลarฤฑyla yรผrรผtรผlรผrse, kodunuzu tarayฤฑcฤฑda รงalฤฑลtฤฑrdฤฑฤฤฑnฤฑzda aลaฤฤฑdaki รฤฑktฤฑ gรถsterilecektir.
รฤฑktฤฑ:
รฤฑktฤฑ, yalnฤฑzca uygulamayฤฑ bir angularjs uygulamasฤฑ olarak tanฤฑmladฤฑฤฤฑmฤฑz iรงin mรผmkรผn olan ifadenin รงฤฑktฤฑsฤฑnฤฑ aรงฤฑkรงa gรถsterir.
AngularJS'de ng-init
Bu, uygulama verilerini baลlatmak iรงin kullanฤฑlฤฑr. Bazen uygulamanฤฑz iรงin bazฤฑ yerel verilere ihtiyaรง duyabilirsiniz, bu ng-init direktifi ile yapฤฑlabilir.
Ng-init รถrneฤi
Aลaฤฤฑdaki รถrnek ng-init yรถnergesinin nasฤฑl kullanฤฑlacaฤฤฑnฤฑ gรถstermektedir.
Bu รถrnekte ng-init direktifini kullanarak โTutorialNameโ adฤฑnda bir deฤiลken oluลturup o deฤiลkenin deฤerini sayfada gรถrรผntรผleyeceฤiz.
<!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 Aรงฤฑklama:
- โTutorialNameโ isimli local deฤiลkeni tanฤฑmlamak iรงin div etiketimize ng-init direktifi ekleniyor ve buna verilen deฤer โAngularJSโ oluyor.
- Ng-init direktifimizde tanฤฑmlanan โTutorialNameโ deฤiลken adฤฑnฤฑn รงฤฑktฤฑsฤฑnฤฑ gรถrรผntรผlemek iรงin AngularJs'deki ifadeleri kullanฤฑyoruz.
Kod baลarฤฑyla yรผrรผtรผlรผrse, kodunuzu tarayฤฑcฤฑda รงalฤฑลtฤฑrdฤฑฤฤฑnฤฑzda aลaฤฤฑdaki รฤฑktฤฑ gรถsterilecektir.
รฤฑktฤฑ:
รฤฑktฤฑda,
- Sonuรง, โAngularJSโ dizesini iรงeren ifadenin รงฤฑktฤฑsฤฑnฤฑ aรงฤฑkรงa gรถsterir. Bu, ng-init bรถlรผmรผnde 'TutorialName' deฤiลkenine "AngularJS" dizesinin atanmasฤฑnฤฑn bir sonucudur.
AngularJS'de ng modeli
Ve son olarak, bir HTML kontrolรผnรผn deฤerini uygulama verilerine baฤlamak iรงin kullanฤฑlan ng-model direktifine sahibiz. Aลaฤฤฑdaki รถrnek ng-model yรถnergesinin nasฤฑl kullanฤฑlacaฤฤฑnฤฑ gรถstermektedir.
Ng modeli รถrneฤi
Bu รถrnekte,
- โMiktarโ ve โFiyatโ adฤฑnda 2 deฤiลken oluลturacaฤฤฑz. Bu deฤiลkenler 2 metin giriล kontrolรผne baฤlanacaktฤฑr.
- Daha sonra hem fiyat hem de miktar deฤerlerinin รงarpฤฑmฤฑna gรถre toplam tutarฤฑ gรถrรผntรผleyeceฤiz.
<!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 Aรงฤฑklama:
- 2 yerel deฤiลkeni tanฤฑmlamak iรงin div etiketimize ng-init yรถnergesi eklenir; birine โmiktarโ, diฤerine โfiyatโ denir.
- ลimdi โKiลilerโ ve โKayฤฑt รผcretiโ metin kutularฤฑnฤฑ sฤฑrasฤฑyla yerel deฤiลkenlerimiz โmiktarโ ve โfiyatโa baฤlamak iรงin ng-model yรถnergesini kullanฤฑyoruz.
- Son olarak, Toplamฤฑ, miktar ve fiyat deฤiลkenlerinin รงarpฤฑmฤฑ olan bir ifadeyle gรถsteriyoruz.
Kod baลarฤฑyla yรผrรผtรผlรผrse, kodunuzu tarayฤฑcฤฑda รงalฤฑลtฤฑrdฤฑฤฤฑnฤฑzda aลaฤฤฑdaki รฤฑktฤฑ gรถsterilecektir.
รฤฑktฤฑ:
- รฤฑktฤฑ, Kiลi ve Kayฤฑt fiyatฤฑ deฤerlerinin รงarpฤฑmฤฑnฤฑ aรงฤฑkรงa gรถsterir.
ลimdi metin kutularฤฑna gidip Kiลi ve Kayฤฑt fiyatฤฑnฤฑn deฤerini deฤiลtirdiฤinizde Toplam otomatik olarak deฤiลecektir.
- Yukarฤฑdaki รงฤฑktฤฑ, angularJ'lerde veri baฤlamanฤฑn gรผcรผnรผ gรถsterir; bu, kullanฤฑmฤฑyla elde edilir. ng-model direktifi.
AngularJS'de ng-tekrar
Bu, bir HTML รถฤesini tekrarlamak iรงin kullanฤฑlฤฑr. Aลaฤฤฑdaki รถrnek, nasฤฑl kullanฤฑlacaฤฤฑnฤฑ gรถsterir ng-tekrar direktifi.
Ng-tekrar รถrneฤi
Bu รถrnekte,
- Bir dizi deฤiลkeninde bir dizi bรถlรผm adฤฑmฤฑz olacak ve
- daha sonra dizinin her รถฤesini bir liste รถฤesi olarak gรถrรผntรผlemek iรงin ng-repeat yรถnergesini kullanฤฑn.
<!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 Aรงฤฑklama:
- 3 string iรงeren bir dizi deฤiลkeni olan โchaptersโ adฤฑ verilen bir deฤiลkeni tanฤฑmlamak iรงin div etiketimize ng-init direktifi eklenir.
- Ng-repeat รถฤesi, "isimler" adฤฑ verilen bir satฤฑr iรงi deฤiลkenin bildirilmesi ve bรถlรผmler dizisindeki her รถฤenin รผzerinden geรงilmesiyle kullanฤฑlฤฑr.
- Son olarak yerel satฤฑr iรงi deฤiลken 'names'in deฤerini gรถsteriyoruz.
Kod baลarฤฑyla yรผrรผtรผlรผrse, kodunuzu tarayฤฑcฤฑda รงalฤฑลtฤฑrdฤฑฤฤฑnฤฑzda aลaฤฤฑdaki รฤฑktฤฑ gรถsterilecektir.
รฤฑktฤฑ:
- Yukarฤฑdaki รงฤฑktฤฑ sadece ng-repeat direktifinin "bรถlรผmler" adฤฑ verilen dizideki her deฤeri aldฤฑฤฤฑnฤฑ ve dizideki her รถฤe iรงin HTML liste รถฤeleri oluลturduฤunu gรถsterir.
รZET
- Yรถnergeler HTML'nin iลlevselliฤini geniลletmek iรงin kullanฤฑlฤฑr. Angular aลaฤฤฑdaki gibi dahili yรถnergeler saฤlar:
- ng-app โ Bu, aรงฤฑsal bir uygulamayฤฑ baลlatmak iรงin kullanฤฑlฤฑr.
- ng-init โ Bu, uygulama deฤiลkenleri oluลturmak iรงin kullanฤฑlฤฑr
- ng-model โ Bu, HTML kontrollerini uygulama verilerine baฤlamak iรงin kullanฤฑlฤฑr
- ng-repeat โ รฤeleri aรงฤฑsal kullanarak tekrarlamak iรงin kullanฤฑlฤฑr.









