2

我在将复选框列放入 VMware Clarity 数据网格时遇到问题,或者通常无法使多选行工作。

我可以让单选工作得很好。

我在 VMware Clarity 文档中看到了示例: https ://vmware.github.io/clarity/documentation/datagrid/batch-action

我觉得我正确地遵循了指示,但没有显示复选框列(如果我将其更改为单选,则会显示单选按钮列)。

我的标记:

<clr-datagrid [(clrDgSelected)]="selected" [clDgRowSelection]="true">

<clr-dg-action-bar>
    <div class="btn-group">
        <button type="button" class="btn btn-sm btn-secondary" (click)="onAdd()"><clr-icon shape="plus"></clr-icon> Register</button>
        <button type="button" class="btn btn-sm btn-secondary" (click)="onDelete()" ><clr-icon shape="close"></clr-icon> Delete</button>
        <button type="button" class="btn btn-sm btn-secondary" (click)="onEdit()" *ngIf="selected?.length == 1"><clr-icon shape="pencil"></clr-icon> Edit</button>
    </div>
</clr-dg-action-bar>

<clr-dg-column>Name</clr-dg-column>
<clr-dg-column>Serial #</clr-dg-column>

<clr-dg-row *clrDgItems="let networkSystem of networkSystems"  [clrDgItem]="networkSystem">
    <clr-dg-cell>{{networkSystem.name}}</clr-dg-cell>
    <clr-dg-cell>{{networkSystem.serial_number}}</clr-dg-cell>
</clr-dg-row>

</clr-datagrid>

我已经尝试深入研究 Clarity 存储库中的示例,但我在任何地方都找不到这个批次选择。(如果官方文档以某种方式包含角度组件和标记的完整源代码,那就太好了)。

谢谢你的帮助!

4

1 回答 1

7

您是否在selected控制器上设置了属性?如果不是,它将是未定义的,并且不会出现选择。

import { Component } from '@angular/core';

@Component({
  selector: 'my-component',
  templateUrl: './my.component.html'
})
export class MyComponent  {
  selected = [];
  networkSystems = [
    {name: 'System 1', serial_number: 'abc'},
    {name: 'System 2', serial_number: 'def'},
    {name: 'System 3', serial_number: 'ghi'},
  ]
}
于 2017-10-26T16:27:40.830 回答