AngularJS ng-click, ng-show & ng-hide Direktive
โก Pametni saลพetak
AngularJS dogaฤaji omoguฤuju web aplikaciji da reagira na korisniฤki unos kao ลกto su klikovi miลกa, pritisci tipki i radnje zadrลพavanja pokazivaฤa miลกa. Direktive, ukljuฤujuฤi ng-click, ng-show i ng-hide, deklarativno veลพu to ponaลกanje u markupu umjesto putem ruฤnih DOM sluลกaฤa.

AngularJS dogaฤaji
AngularJS dogaฤaji su funkcionalnosti koje omoguฤuju web aplikacijama interakciju s korisniฤkim unosima kao ลกto su klikovi miลกem, unos s tipkovnice i zadrลพavanje pokazivaฤa miลกa iznad polja. Dogaฤaji se moraju obraditi u web aplikacijama kako bi se izvrลกili odreฤeni zadaci i radnje, a svaki se pokreฤe kada korisnik izvrลกi odgovarajuฤu radnju.
Prilikom izrade web aplikacija, prije ili kasnije vaลกa aplikacija mora obraditi DOM dogaฤaje kao ลกto su klikovi i pomicanja miลกa, pritisci tipki na tipkovnici i dogaฤaji promjena. AngularJS pruลพa direktive koje deklarativno obraฤuju te dogaฤaje.
Na primjer, ako gumb na stranici treba neลกto obraditi kada se klikne na njega, direktiva dogaฤaja ng-click osigurava tu udicu.
โ ๏ธ Obavijest za podrลกku: AngularJS dosegnut kraj ลพivotnog vijeka 31. prosinca 2021. i ne prima daljnje zakrpe ili sigurnosne ispravke od Angular tima. Donje upute ostaju toฤne za odrลพavanje postojeฤih AngularJS 1.x aplikacija; za novi rad koristite moderne Kutni, gdje su ove direktive zamijenjene vezanjem dogaฤaja kao ลกto je (click) i *ngIf.
ล to je ng-click Direktiva u AngularJS?
The "ng-click direktiva" U AngularJS-u primjenjuje prilagoฤeno ponaลกanje kada se klikne na HTML element. Obiฤno se koristi na gumbima, buduฤi da su oni najฤeลกฤe mjesto za dodavanje odgovora na klik, a takoฤer se koristi za podizanje upozorenja pri kliku.
Sintaksa ng-click u AngularJS
<element ng-click="expression"> </element>
Primjer ng-click-a u AngularJS-u
U ovom primjeru ng-click-a, varijabla brojaฤa se poveฤava svaki put kada korisnik klikne gumb.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Event Registration</title> </head> <body ng-app=""> <script src="https://code.angularjs.org/1.8.3/angular.js"></script> <h1>Guru99 Global Event</h1> <button ng-click="count = count + 1" ng-init="count=0"> Increment </button> <div>The Current Count is {{count}}</div> </body> </html>
Code Objaลกnjenje:
- Direktiva ng-init postavlja lokalnu varijablu
countna 0. - Direktiva ng-click na gumbu poveฤava
countza 1 na svaki klik. - Interpolacija
{{count}}prikazuje korisniku trenutnu vrijednost.
Izlaz:
Prikazuje se gumb Poveฤaj, a broj je inicijalno nula. Klikom na njega poveฤava se vrijednost, kao ลกto je prikazano na slici ispod.
ล to je ng-show Direktiva u AngularJS?
The direktiva ng-show prikazuje ili skriva dano HTML element na temelju izraza navedenog u atributu ng-show. Interno se element prikazuje ili skriva uklanjanjem ili dodavanjem .ng-hide CSS klasa, unaprijed definirana klasa koja postavlja display do none.
Sintaksa ng-show u AngularJS
<element ng-show="expression"> </element>
Primjer ng-show u AngularJS
Ovaj primjer koristi ng-show za otkrivanje skrivenog elementa.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Event Registration</title> </head> <body> <script src="https://code.angularjs.org/1.8.3/angular.js"></script> <h1>Guru99 Global Event</h1> <div ng-app="DemoApp" ng-controller="DemoController"> <input type="button" value="Show Angular" ng-click="ShowHide()"/> <br><br><div ng-show="IsVisible">Angular</div> </div> <script type="text/javascript"> var app = angular.module('DemoApp', []); app.controller('DemoController', function($scope) { $scope.IsVisible = false; $scope.ShowHide = function() { $scope.IsVisible = true; }; }); </script> </body> </html>
Code Objaลกnjenje:
- Direktiva ng-click na gumbu referencira a
ShowHidefunkcija definirana u kontroleruDemoController. - Atribut ng-show pridruลพen je divu koji sadrลพi tekst Angular. Ovo je element ฤija se vidljivost kontrolira.
- U kontroleru,
IsVisibleVarijabla ฤlanica se postavlja na objekt opsega i inicijalizira nafalse, pa je div skriven kada se stranica prvi put uฤita. S ng-show, vrijednost od istinski prikazuje element i laลพan skriva ga. - The
ShowHideskupovi funkcijaIsVisiblena true kako bi div postao vidljiv.
Izlaz:
Div koji sadrลพi tekst se inicijalno ne prikazuje, jer IsVisible poฤinje kao laลพno. Klikom Prikaลพi kutni postavlja ga na true i tekst postaje vidljiv.
ล to je ng-hide Direktiva u AngularJS?
The ng-hide direktiva skriva element kada se njegov izraz evaluira kao TRUE, a prikazuje element kada je izraz FALSE - potpuna inverzija od ng-show. Interno koristi isto .ng-hide CSS klasa.
Sintaksa ng-hide u AngularJS
<element ng-hide="expression"> </element>
Primjer ng-hide u AngularJS
Ovaj primjer odraลพava primjer ng-show tako da se dvije direktive mogu izravno usporediti.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Event Registration</title> </head> <body> <script src="https://code.angularjs.org/1.8.3/angular.js"></script> <h1>Guru99 Global Event</h1> <div ng-app="DemoApp" ng-controller="DemoController"> <input type="button" value="Hide Angular" ng-click="ShowHide()"/> <br><br><div ng-hide="IsVisible">Angular</div> </div> <script type="text/javascript"> var app = angular.module('DemoApp', []); app.controller('DemoController', function($scope) { $scope.IsVisible = false; $scope.ShowHide = function() { $scope.IsVisible = true; }; }); </script> </body> </html>
Code Objaลกnjenje:
- Direktiva ng-click na gumbu referencira
ShowHidefunkcija u sustavuDemoController. - The ng-hide Atribut je pridruลพen divu koji sadrลพi tekst Angular.
IsVisibleinicijalizira se nafalseBuduฤi da je ovo ng-hide umjesto ng-show, vrijednost false znaฤi da je div vidljiv kada se stranica prvi put uฤitava.- The
ShowHideskupovi funkcijaIsVisiblena true, ลกto skriva div.
Izlaz:
Div se inicijalno prikazuje jer se false prosljeฤuje ng-hideu. Klikom Sakrij kutni prolazi kao istina i rijeฤ nestaje.
ng-show vs ng-hide vs ng-if: Kljuฤne razlike
Tri direktive kontroliraju hoฤe li korisnik vidjeti element, a odabir izmeฤu njih utjeฤe i na ponaลกanje i na performanse renderiranja. Prve dvije samo prebacuju CSS klasu, tako da je element uvijek prisutan na stranici; treฤa dodaje i uklanja sam element.
| Aspekt | ng-show | ng-hide | ng-if |
|---|---|---|---|
| Element vidljiv kada | Izraz je istinit | Izraz je laลพan | Izraz je istinit |
| Element u DOM-u | Uvijek | Uvijek | Samo dok je istina |
| Koriลกtena metoda | Toggles .ng-hide klasa | Toggles .ng-hide klasa | Stvara i uniลกtava element |
| Podreฤeni opseg | Dijeli nadreฤeni opseg | Dijeli nadreฤeni opseg | Stvara novi podreฤeni opseg |
| Promatraฤi kada su skriveni | Joลก uvijek aktivan | Joลก uvijek aktivan | ukloniti |
| Najbolje za | ฤesto prebacivanje laganog sadrลพaja | Invertirani uvjeti | Teลพak sadrลพaj se rijetko prikazuje |
Koristite ng-show ili ng-hide kada se element ฤesto mijenja, jer se element nikada ne obnavlja, a mijenjanje koลกta samo promjenu klase. Koristite ng-if za skupe dijelove koji se rijetko prikazuju, jer uklanjanje elementa takoฤer uklanja njegove promatraฤe i smanjuje troลกkove saลพetka u svakom ciklusu.
AngularJS smjernice sluลกatelja dogaฤaja
Moลพete dodati AngularJS sluลกaฤe dogaฤaja HTML elementima koristeฤi jedan ili viลกe ovih direktive:
- ng-zamuฤenje
- ng-promjena
- ng-klik
- ng-kopija
- ng-rez
- ng-dblclick
- ng-fokus
- ng-tipka
- ng-tipkovnica
- ng-tipka
- ng-spuลกtanje miลกa
- ng-mouseenter
- ng-miลก ostavi
- ng-pomakni miลกa
- ng-prelazak miลกem
- ng-miลก gore
- ng-pasta
- ng-podnesi
Svaka direktiva prihvaฤa izraz, a sirovi dogaฤaj preglednika dostupan je unutar njega kao $event kada rukovatelju trebaju detalji poput pritisnute tipke ili koordinata klika.









