Quels sont les types de boucles qui existent dans Angular 2?
Je n'ai trouvé que for
et foreach
, mais j'ai du mal à en trouver d'autres. Y a-t-il une liste quelque part?
Y a-t-il des exemples quelque part? Cela aiderait à comprendre très fortement.
[EDIT]: Ce que je recherche essentiellement, c’est une liste de tous les types de boucles différents dans Angular 2.
[EDIT 2]: Ce que je veux vraiment dire, ce sont les boucles spécifiques à Angular 2 dans la section template (désolé, je ne savais pas qu'il y avait autant de possibilités). Pour donner un exemple avec * ngFor:
<ul class="contacts">
<li *ngFor="#contact of contacts"
(click)="onSelectContact(contact)"
[class.selectedContact]="contact === selectedContact">
<span class="badge">{{contact.id}}</span> {{contact.name}}
</li>
</ul>
La seule directive de boucle de modèle dans Angular 2 est ngFor et ne fonctionne qu'avec des iterables, généralement des tableaux. (In Angular 1, ng-repeat
fonctionnerait également avec des objets, mais Angular 2 ne fonctionnerait pas.)
Vous pouvez utiliser un pipe pour formater, filtrer, trier, etc. la liste avant de l'afficher.
Vous pouvez utiliser la directive ngFor
dans Angular 2 pour la lecture en boucle/itération.
Comme ça
<li *ngFor="#item of items; #i = index">...</li>
La documentation de cette directive est disponible ici https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html
Et un exemple de cela est fait dans les guides du développeur sur le site Web de Angular 2 https://angular.io/docs/ts/latest/guide/displaying-data.html#!#showing -an-array-property-with-ngfor
Angular 2 est un framework JavaScript. Les boucles pour JavaScript peuvent également fonctionner dans Angular 2. Voir ci-dessous l'utilisation de faire en plongeur
http://plnkr.co/edit/s9hfAcdjW6QU0Abj8UqQ?p=preview
//our root app component
import {Component} from 'angular2/core'
@Component({
selector: 'my-app',
providers: [],
template: `
<div>
<h2>Hello {{name}}</h2> // Output Hello Angular2 0123456789
</div>
`,
directives: []
})
export class App {
constructor() {
this.name = 'Angular2 '
this.testLoop();
}
testLoop(){
var i = 0;
do {
this.name += i;
i++;
}
while (i < 10);
}
}
Pour live output click ...
Exemple,
<!doctype html>
<html>
<head>
<title>ng for loop in angular 2 with ES5.</title>
<script type="text/javascript" src="https://code.angularjs.org/2.0.0-alpha.28/angular2.sfx.dev.js"></script>
<script>
var ngForLoop = function () {
this.msg = "ng for loop in angular 2 with ES5.";
this.users = ["Anil Singh", "Sunil Singh", "Sushil Singh", "Aradhya", 'Reena'];
};
ngForLoop.annotations = [
new angular.Component({
selector: 'ngforloop'
}),
new angular.View({
template: '<H1>{{msg}}</H1>' +
'<p> User List : </p>' +
'<ul>' +
'<li *ng-for="#user of users">' +
'{{user}}' +
'</li>' +
'</ul>',
directives: [angular.NgFor]
})
];
document.addEventListener("DOMContentLoaded", function () {
angular.bootstrap(ngForLoop);
});
</script>
</head>
<body>
<ngforloop></ngforloop>
<h2>
<a href="http://www.code-sample.com/" target="_blank">For more detail...</a>
</h2>
</body>
</html>