2
私のすべてのリストに必要ないくつかの機能を含む汎用リストコンポーネントを作成したいと思います。理想的には、異なるデータセットをレンダリングするために、コンポーネントへの入力としてさまざまなサービスを使用したいと考えています。これは角度2で可能ですか?サービスは約束を返しgetItems()
という名前のいくつかの機能を有していればこれが可能である場合は、角2つのドキュメントAngular2の入力としてサービスを渡す
@Component({
selector: 'Generic List',
template:
`
<h2>Items</h2>
<ul class="items">
<li *ngFor="let item of items"
[class.selected]="isSelected(item)"
(click)="onSelect(item)">
<span class="badge">{{item.id}}</span> {{item.name}}
</li>
</ul>
`
})
export class GTComponent {
@Input() someService: Service;
items: Item[];
private selectedId: number;
isSelected(item: Item) { return item.id === this.selectedId; }
onSelect(item: Item) {
}
}
から例をModfying
は、どのように私は、サービスからのデータを持つアイテムの配列を移入します。
はい、これは私が '項目[]'を埋めるために入力として渡されたサービスを利用することはできません。その意図は、コンポーネントが提供されるサービスを知らないことです。 – JME
私は同様のシナリオを持っています。入力としてサービスを渡して直接使用することは可能ですか? –