AngularJS-expressies
AngularJS bindt gegevens aan HTML met behulp van Expressions .
AngularJS-expressies
AngularJS-expressies kunnen tussen dubbele accolades worden geschreven: .{{ expression }}
AngularJS-expressies kunnen ook in een richtlijn worden geschreven: .ng-bind="expression"
AngularJS lost de uitdrukking op en retourneert het resultaat precies waar de uitdrukking is geschreven.
AngularJS-expressies lijken veel op JavaScript-expressies: ze kunnen letterlijke waarden, operators en variabelen bevatten.
Voorbeeld {{ 5 + 5 }} of {{ firstName + " " + lastName }}
Voorbeeld
<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
<body>
<div ng-app="">
<p>My first expression: {{ 5 + 5 }}</p>
</div>
</body>
</html>
Als u de ng-app
richtlijn verwijdert, zal HTML de uitdrukking weergeven zoals deze is, zonder deze op te lossen:
Voorbeeld
<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
<body>
<div>
<p>My first expression: {{ 5 + 5 }}</p>
</div>
</body>
</html>
U kunt uitdrukkingen schrijven waar u maar wilt, AngularJS lost de uitdrukking eenvoudig op en retourneert het resultaat.
Voorbeeld: laat AngularJS de waarde van CSS-eigenschappen wijzigen.
Wijzig de kleur van het onderstaande invoervak door de waarde ervan te wijzigen:
Voorbeeld
<div ng-app="" ng-init="myCol='lightblue'">
<input
style="background-color:{{myCol}}" ng-model="myCol">
</div>
AngularJS-nummers
AngularJS-nummers zijn als JavaScript-nummers:
Voorbeeld
<div ng-app="" ng-init="quantity=1;cost=5">
<p>Total in dollar: {{ quantity * cost }}</p>
</div>
Hetzelfde voorbeeld met ng-bind
:
Voorbeeld
<div ng-app="" ng-init="quantity=1;cost=5">
<p>Total in dollar: <span ng-bind="quantity * cost"></span></p>
</div>
Gebruik ng-init
is niet erg gebruikelijk. In het hoofdstuk over controllers leert u een betere manier om gegevens te initialiseren.
AngularJS-snaren
AngularJS-strings zijn als JavaScript-strings:
Voorbeeld
<div ng-app="" ng-init="firstName='John';lastName='Doe'">
<p>The name is {{ firstName + " " + lastName }}</p>
</div>
Hetzelfde voorbeeld met ng-bind
:
Voorbeeld
<div ng-app="" ng-init="firstName='John';lastName='Doe'">
<p>The name is <span ng-bind="firstName + ' ' + lastName"></span></p>
</div>
AngularJS-objecten
AngularJS-objecten zijn als JavaScript-objecten:
Voorbeeld
<div ng-app="" ng-init="person={firstName:'John',lastName:'Doe'}">
<p>The name is {{ person.lastName }}</p>
</div>
Hetzelfde voorbeeld met ng-bind
:
Voorbeeld
<div ng-app="" ng-init="person={firstName:'John',lastName:'Doe'}">
<p>The name is <span ng-bind="person.lastName"></span></p>
</div>
AngularJS-arrays
AngularJS-arrays zijn als JavaScript-arrays:
Voorbeeld
<div ng-app="" ng-init="points=[1,15,19,2,40]">
<p>The third result is {{ points[2] }}</p>
</div>
Hetzelfde voorbeeld met ng-bind
:
Voorbeeld
<div ng-app="" ng-init="points=[1,15,19,2,40]">
<p>The third result is <span ng-bind="points[2]"></span></p>
</div>
AngularJS-expressies versus JavaScript-expressies
Net als JavaScript-expressies kunnen AngularJS-expressies letterlijke waarden, operators en variabelen bevatten.
In tegenstelling tot JavaScript-expressies, kunnen AngularJS-expressies in HTML worden geschreven.
AngularJS-expressies ondersteunen geen conditionals, loops en exceptions, terwijl JavaScript-expressies dat wel doen.
AngularJS-expressies ondersteunen filters, terwijl JavaScript-expressies dat niet doen.
Leer meer over JavaScript in onze JavaScript-tutorial .