我正在尝试在Angular 4项目中使用ngx-datatable库。
我一直在关注源代码演示found here提供的内联编辑示例。具体来说就是file。
我已经确认在分别列出每个ngx-datatable-column
的详细信息时一切正常,就像演示代码显示的那样。但是,当我使用ngFor
指令动态循环遍历rows
数据时,控制台中没有错误,我看到所有行都已填充,但是双击任何要开始的行内联编辑都会失败。这就像吞咽或阻止 hit`检测。
使用ngFor
时,下面是我的模板文件。不确定我做错了什么或错过了什么。任何帮助都非常感谢。
<ng-container *ngIf="rows.length > 0">
<ngx-datatable #mydatatable class="bootstrap" [headerHeight]="50" [limit]="5" [columnMode]="'standard'"
[footerHeight]="50" [rowHeight]="'auto'" [rows]="rows" [externalPaging]="true"
[count]="page.totalElements" [offset]="page.pageNumber" [limit]="page.size" (page)="setPage($event)">
<ng-container *ngFor="let column of headers; let j = index">
<ngx-datatable-column [name]="headers[j].name" [sortable]="false">
<ng-template ngx-datatable-header-template>
<span [ngStyle]="{ 'font-weight': 'bold'}">{{displayNames[j]}}</span>
</ng-template>
<ng-template ngx-datatable-cell-template let-rowIndex="rowIndex" let-value="value"
let-row="row">
<span title="Double click to edit" (dblclick)="editing[rowIndex + '-' + headers[j].name] = true"
*ngIf="!editing[rowIndex + '-' + headers[j].name]" [ngStyle]="{ 'z-index': '500'}">
{{value}}
</span>
<input autofocus (blur)="updateValue($event, 'headers[j].name', rowIndex)" *ngIf="editing[rowIndex+ '-' + headers[j].name]"
type="text" [value]="value" />
</ng-template>
</ngx-datatable-column>
</ng-container>
</ngx-datatable>
</ng-container>