1

我正在使用基于 jquery Datatables的ember-datatables插件。我根据他们的指南创建了一个数据表。

但是一段时间后我正在更改表格的数据并重新绘制表格。重绘表格不会删除以前的数据。

这是我创建的Ember twiddle。我也在下面添加代码。

模板/应用程序.hbs

<h1>Please find data table below</h1>
{{outlet}}
{{#data-table id="myTable"}}
  <thead>
    <tr>
      <th>Name</th>
      <th>Salary</th>
      <th>Position</th>
    </tr>
  </thead>
  <tfoot>
    <tr>
      <th>Name</th>
      <th>Salary</th>
      <th>Position</th>
    </tr>
  </tfoot>
  <tbody>
    {{#each data1 as |data|}}
        <tr>
        <td>{{data.name}}</td>
        <td>{{data.salary}}</td>
        <td>{{data.position}}</td>
      </tr>
    {{/each}}
  </tbody>
{{/data-table}}

路线/application.js

import Ember from 'ember';

export default Ember.Route.extend({
  setupController: function() {
    Ember.run.later(this, function() {
      this.controller.set('data1', [{
        'name': 'John Smith 1',
        'salary': '$2000',
        'position': 'developer'
      }, {
        'name': 'Alex 1',
        'salary': '$2000',
        'position': 'developer'
      }, {
        'name': 'Leonardo 1',
        'salary': '$2000',
        'position': 'developer'
      }]);

      var api = new $.fn.dataTable.Api('#myTable');
      api.row.clear();

      api.draw();

    }, 5000);
  }
});

控制器/application.js

import Ember from 'ember';

export default Ember.Controller.extend({
  appName: 'Ember Twiddle',
  data1: [{
    'name': 'John Smith',
    'salary': '$2000',
    'position': 'developer'
  }, {
    'name': 'Alex',
    'salary': '$2000',
    'position': 'developer'
  }, {
    'name': 'Leonardo',
    'salary': '$2000',
    'position': 'developer'
  }]
});
4

1 回答 1

1

你得到TypeError: api.row.clear is not a function.

从 更改api.row.clear()api.clear()正在解决您的问题。

考虑避免使用评论中提到的这个插件。

于 2017-11-23T15:25:53.390 回答