Как я могу использовать компонент в качестве входных данных для другого компонента в Angular?
Например:
Я хочу компонент таблицы Bulid AppTableComponent:
<app-table [dataSource]="dataSource" [columns]="columns">
<ng-container tableColumnDef="actions">
<a routerLink="/model/edit/{{item.id}}" routerLinkActive="active">Edit</a>
<a routerLink="/model/delete/{{item.id}}" routerLinkActive="active">Delete</a>
</ng-container>
<ng-container tableColumnDef="isActive">
<div [ngClass]="{cercl:true, 'is-active':item.is_active}"> </div>
</ng-container>
</app-table>
dataSource
- это сумма данных массива, подобная Model[]
или Person[]
или Car[]
. columns
- это строковый массив, подобный ['id', 'isActive', 'name', 'actions']
. Он должен содержать строки с именами источников данных или имена дополнительных столбцов.
Я знаю, как я могу использовать ng-content
, но это не случайный случай. Разница в том, что я должен использовать части контента в нескольких местах. Возможно, мне стоит использовать ng-contet, но я чего-то не знаю.
Я уверен, что моя цель достижима, потому что таблица угловых материалов работает так:
<mat-table #table [dataSource]="dataSource">
<ng-container matColumnDef="position"></ng-container>
<ng-container matColumnDef="weight"></ng-container>
</mat-table>
Пожалуйста, не предлагайте мне использовать компонент таблицы угловых материалов. Мне не нужен стол. Я просто хочу узнать что-то новое.
Я буду рад любой информации или статье по теме!