angular - Ngx-Datatable no puede acceder a la fila en la plantilla
Estoy tratando de usar
<ng-template let-row="row" ngx-datatable-cell-template>
en mi ngx-datatable
pero estoy recibiendo el siguiente error:
El contexto de la plantilla de 'DataTableColumnCellDirective' no define un miembro llamado 'row'
Aquí está mi código completo:
<ngx-datatable
class="data-table"
[rows]="filteredItems"
[ngClass]="'material'"
[rowHeight]="'auto'"
[headerHeight]="50"
[footerHeight]="50"
[limit]="6"
[columnMode]="'force'">
<!-- Developer Id Column -->
<ngx-datatable-column prop="id" name="Id"></ngx-datatable-column>
<!-- Developer First Name Column-->
<ngx-datatable-column prop="devFirstName" name="First Name"></ngx-datatable-column>
<!-- Developer Last Name Column -->
<ngx-datatable-column prop="devLastName" name="Last Name"></ngx-datatable-column>
<!-- Developer Last Name Column -->
<ngx-datatable-column prop="email" name="Mail"></ngx-datatable-column>
<!-- Developer GitLab Id Column -->
<ngx-datatable-column prop="gitlabId" name="Git Id"></ngx-datatable-column>
<!-- Developer App Count Column-->
<ngx-datatable-column prop="appCount" name="Apps"></ngx-datatable-column>
<!-- Developer License Column -->
<ngx-datatable-column prop="license" name="License"></ngx-datatable-column>
<!-- Developer Edit Column -->
<ngx-datatable-column name="Edit" [sortable]="false">
<ng-template let-row="row" ngx-datatable-cell-template>
<ion-button size="small" fill="outline" (click)="changeLicense(row.id)">Edit</ion-button>
</ng-template>
</ngx-datatable-column>
</ngx-datatable>
¿Alguien sabe qué estoy haciendo mal?
¡Gracias de antemano!
Respuesta #1
Información adicional: El problema se resuelve con la versión v0.900.8 del Angular Language Service
Si estás usando VS Code como editor de código, hay un problema con las versiones del Angular Language Service superiores a la v0.900.4 ejecutándose en VS Code y con directivas que usan ng-templates. El código debería compilar y funcionar incluso si el servicio de lenguaje te da un error.
Hay un problema abierto para esto
https://github.com/angular/vscode-ng-language-service/issues/572
Puedes seguir el ejemplo dado en esta respuesta hasta que se resuelva el problema, que consiste en degradar tu Angular Language Service a la versión v0.900.4 yendo a la pestaña de extensiones y buscando Angular Language Service. Haz clic en el botón Administrar junto a la extensión y selecciona Instalar otra versión. Luego selecciona la versión v0.900.4.