Angular 2 ng2-smart-table如何设置外部表模式

时间:2017-07-18 12:08:02

标签: angular2-routing ng2-smart-table

我使用这个插件在angualar 2中创建一个智能表:

this

我需要自定义表格。

ie)只有当用户点击“创建”链接时,才应该触发该事件,他们的文档说明了这一点:

'create'事件:单击“创建”按钮后触发。仅在表格模式=外部时触发。

需要知道如何设置外部模式,因为我无法在他们的文档中找到任何地方。

截至目前我正在使用:

<ng2-smart-table [settings]="settings" [source]="source" (userRowSelect)="onUserRowSelect($event)"  class="table table-hover table-striped"></ng2-smart-table>

onUserRowSelect(event): void {
   //But this event triggers whenever(wherever in the table) user clicks, which is dont want !
}

需要建议!

2 个答案:

答案 0 :(得分:3)

1)设置ng2-smarttable的设置对象,如下所示

settings = {

        mode: 'external',
    add: {
      addButtonContent: '<i class="ion-ios-plus-outline"></i>',
      createButtonContent: '<i class="ion-checkmark"></i>',
      cancelButtonContent: '<i class="ion-close"></i>',



    },
    edit: {
      editButtonContent: '<i class="ion-edit"></i>',
      saveButtonContent: '<i class="ion-checkmark"></i>',
      cancelButtonContent: '<i class="ion-close"></i>',


    },
    delete: {
      deleteButtonContent: '<i class="ion-trash-a"></i>',
      confirmDelete: true
    },
    columns: {
      id: {
        title: 'ID',
        type: 'number'
      },
      name: {
        title: 'Name',
        type: 'string'
      },
      lastName: {
        title: 'Last Name',
        type: 'string'
      },
      username: {
        title: 'Username',
        type: 'string'
      },
      email: {
        title: 'E-mail',
        type: 'string'
      },
      age: {
        title: 'Age',
        type: 'number'
      }
    }
  };

2)在html页面中定义设置和来源

 <ng2-smart-table [settings]="settings"  [source]="source" (create)="openCreateDialog($event)"></ng2-smart-table>

您可以在创建按钮单击时执行任何操作。 在ts文件中定义openCreateDialog函数,如下所示

openCreateDialog(event) {

    //logic
  }

答案 1 :(得分:0)

我通过使用他们的(createConfirm)事件来实现,如:

<ng2-smart-table [settings]="view_update_items_settings" [source]="source" (createConfirm)="onCreateConfirm($event)"  class="table table-hover table-striped"></ng2-smart-table>
在.ts文件中

onCreateConfirm(event) {
    ...
}