[英]Generic type definitions in angular components with parent/child relations
我正在嘗試創建這樣的組件:
<dropdown formControlName="car">
<dropdown-option value="volvo"></dropdown-option>
<dropdown-option value="bmw"></dropdown-option>
<dropdown-option value="peugeot"></dropdown-option>
<!-- etc -->
</dropdown>
我對下拉組件的定義如下:
export component DropdownComponent<T> {
possibilities: Array<T>
}
我對下拉選項組件的定義如下:
export component DropdownOptionComponent<T> {
@Input() value: T
}
我的DropdownOptionComponent
是否有可能推斷出DropdownOptionComponent
的泛型類型T
並將DropdownComponent
的可用選項限制為滿足泛型T
的任何選項?
編輯:為了進一步澄清我想要解決的問題,我希望我的模板足夠聰明,可以看到給定父定義,在我的模板中,它將檢查它是否有效。
編輯2:更好的例子:
// mycomponent.component.ts
export class MyComponent {
data: Array<{param1: number, param2: string}>;
}
<!-- mycomponent.component.html -->
<table [dataSource]="data">
<table-entry *myTemplateDirective="let entry">
<!-- do something with entry -->
</table-entry>
</table>
是否可以根據表格組件中的data
輸入來entry
類型的條目。
編輯 3:代碼示例中的錯字
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.