Angular 2
Как использовать ngfor
Поиск…
Вступление
Директива
ngFor
используется Angular2 для создания шаблона один раз для каждого элемента в итерируемом объекте. Эта директива связывает итерабельность с DOM, поэтому, если содержимое итеративного изменяется, содержимое DOM также будет изменено.
Пример неупорядоченного списка
<ul>
<li *ngFor="let item of items">{{item.name}}</li>
</ul>
Более подробный пример шаблона
<div *ngFor="let item of items">
<p>{{item.name}}</p>
<p>{{item.price}}</p>
<p>{{item.description}}</p>
</div>
Пример отслеживания текущего взаимодействия
<div *ngFor="let item of items; let i = index">
<p>Item number: {{i}}</p>
</div>
В этом случае я возьму значение индекса, которое является текущей итерацией цикла.
Угловые2 вытесненные экспортированные значения
Angular2 предоставляет несколько экспортированных значений, которые могут быть добавлены к локальным переменным. Это:
- индекс
- первый
- прошлой
- четное
- странный
Кроме index
, другие берут Boolean
значение. В качестве предыдущего примера, использующего индекс, он может использоваться любым из этих экспортированных значений:
<div *ngFor="let item of items; let firstItem = first; let lastItem = last">
<p *ngIf="firstItem">I am the first item and I am gonna be showed</p>
<p *ngIf="firstItem">I am not the first item and I will not show up :(</p>
<p *ngIf="lastItem">But I'm gonna be showed as I am the last item :)</p>
</div>
* ngFor с трубкой
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'even'
})
export class EvenPipe implements PipeTransform {
transform(value: string): string {
if(value && value %2 === 0){
return value;
}
}
}
@Component({
selector: 'example-component',
template: '<div>
<div *ngFor="let number of numbers | even">
{{number}}
</div>
</div>'
})
export class exampleComponent {
let numbers : List<number> = Array.apply(null, {length: 10}).map(Number.call, Number)
}
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow