应用程序状态

时间:2016-05-06 04:44:16

标签: javascript reactjs datatable datatables redux

我有一个使用Reactjs -Redux构建的应用程序。现在 - 我试图合并Jquery Datatable。因此,我希望在我的数据表上的数据是通过我的redux上的调度操作获取的。基本上,我已经有我的应用程序状态的数据。我需要将来自应用程序状态的数据放在我的jquery数据表上。像这样:

    $('#example').DataTable( {
    "ajax": application_state.data,
    "columns": [
        { "data": "name[, ]" },
        { "data": "hr.0" },
        { "data": "office" },
        { "data": "extn" },
        { "data": "hr.2" },
        { "data": "hr.1" }
    ]
} );

显然,上面的代码不起作用,因为我说我的数据已经处于我的应用程序状态,而且我不必使用“ajax”。我也试过这样的事情:

    $('#example').DataTable( {
    "data": application_state.data,
    "columns": [
        { "data": "name[, ]" },
        { "data": "hr.0" },
        { "data": "office" },
        { "data": "extn" },
        { "data": "hr.2" },
        { "data": "hr.1" }
    ]
} );

但是,我仍然没有运气。

我在状态中拥有的JSON数据完全有效,它是一个对象数组。我只是希望它加载到我的jquery数据表中。现在,有一个选项,我知道将100%工作,但这是肮脏的方式。这是通过在表上手动构建数据。我的意思是自己创建行(<tr><td> ..)。我不喜欢那样。

非常感谢您的回复。 最好

1 个答案:

答案 0 :(得分:0)

我找到了使用aoColumnsfnAddData的方法。像这样:

// this is where field mapping happens
      const cols=[
         {'mDataProp':'<column/fieldname>'}
      ]
      const dataTableOptions = {
        responsive: true,
        bDestroy:true,
        pageLength: 25,
        deferRender:true,
        aoColumns:cols //The aoColumns
      }

      const _dt=$('#example')
              .dataTable(dataTableOptions);

    _dt.fnClearTable();
    _dt.fnAddData(<your state data here>)// Then Add your data using fnAddData

感谢观看球员......干杯!我希望其他人也会觉得这很有帮助。