0
我在繼續關於在egghead.com上使用Angular 2的約翰林德奎斯特(John Lindquist)以及完成與他完全相同的事情之後,我沒有得到相同的結果。Angular 2自定義管道
這是關於課程17
我有一個自定義過濾器,其完美的作品:
開始,pipe.ts
import {Pipe} from '@angular/core';
@Pipe({
name: "started"
})
export class StartedPipe{
transform(value, [status]){
return value.filter((item)=> item.status === "started");
}
}
待辦事項,list.ts
import {Component, Input} from '@angular/core';
import {TodoService} from "./todo-service";
import {TodoItemRenderer} from "./todo-item-renderer";
import {StartedPipe} from './started-pipe';
@Component({
selector: 'todo-list',
pipes: [StartedPipe],
directives: [TodoItemRenderer],
template: `
<div>
<ul>
<li *ngFor="let todo of todoService.todos | started : 'started'">
<todo-item-renderer
[todo]="todo"
(toggle)="todoService.toggleTodo($event)">
</todo-item-renderer>
</li>
</ul>
</div>
`
})
export class TodoList{
@Input() status;
constructor(public todoService: TodoService){}
}
但是當我想使用我的變換值的數組arg時,它不再起作用:
開始,pipe.ts
import {Pipe} from '@angular/core';
@Pipe({
name: "started"
})
export class StartedPipe{
transform(value, [status]){
return value.filter((item)=> item.status === status);
}
}
如果你有一個想法,它的歡迎!
謝謝。
非常感謝好友。 –
嗨夥計:)一個問題:你確定這仍然是做到這一點的方法嗎?看來我不能再有組件上的管道屬性了。 – johnnyfittizio
@johnnyfittizio你應該在模塊的'declarations'數組中聲明你的管道 – yurzui