【发布时间】:2018-10-05 07:02:21
【问题描述】:
我正在尝试在我的 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>
【问题讨论】:
标签: angular angular-directive ngfor ngx-datatable