首页 > 解决方案 > 如何限制在使用 ngx-datatable 创建的表中不重新排序列但所有剩余列必须是可重新排序的

问题描述

我正在使用角度 4 中的 ngx-datatable 工具创建一些表。我需要一列,即。该表的第一列不能重新排序,所有其他列必须是可排序的。有人可以帮帮我吗?

标签: javascriptangulartypescriptngx-datatable

解决方案


您将需要使用draggable输入属性绑定。

我相信在您的 component.html 上,您的 ngx-datatable 组件看起来像这样。首先ngx-datatable-column,您需要将draggable第一列的属性设置为false. 至于其他列,你可以设置draggable为true,虽然draggable默认为true,因此实际上不需要指定它。

<ngx-datatable #table class="bootstrap" [columns]="dataColumns">
  <!-- First column is not draggable -->
  <ngx-datatable-column [width]="30" [draggable]="false">
                            ...
  </ngx-datatable-column>
  <!-- The other columns are draggable -->
  <ngx-datatable-column *ngFor="let column of dataColumns| slice:1; let i = index;" name="{{column.name}}" prop="{{column.prop}}" [draggable]="true">
  ...
  </ngx-datatable-column>
</ngx-datatable>

在你的 component.ts 上,你需要定义你的dataColumns.

dataColumns = [
    {
      prop: 'id',
      name: 'ID'
    },
    .
    .
    // other column definitions

]

推荐阅读