0

当我在表中添加新行时,我正在处理角度项目,我在我的服务中获得了正确的数据,但在表中它显示了 2 次。

以上是我的智能表代码。

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

以下是保存功能。

 add: {
      addButtonContent: '<i class="nb-plus"></i>',
      createButtonContent: '<i class="nb-checkmark"></i>',
      cancelButtonContent: '<i class="nb-close"></i>',
      confirmCreate: true,
    },

    onCreateConfirm(event): void {
if (window.confirm('Are you sure you want to create?')) {
      event.newData['name'] += ' + added in code';
      event.confirm.resolve(event.newData);
      CoursesService.addNewCourse(event.newData);

    } else {
      event.confirm.reject();
    }
  }    
      }

service中的addNewCourse函数如下,

static addNewCourse(data)
{
        this.coursedata.push(data);
    console.log(this.coursedata);
}

在 coursedata 中,我只获取一次数据,而在表格中显示 2 次

有什么帮助吗?

4

1 回答 1

0

我在 addNewCourse() 函数中再次推送数据,所以我必须删除它。因为 event.confirm.resolve(event.newData);正在推送数据,所以 addNewCourse() 应该如下

static addNewCourse(data)
{
    console.log(this.coursedata);
}
于 2018-02-10T09:27:44.710 回答