DataTable中函数fnAddData()的更改(以下代码)引入了angularJS $ resource.query()的问题:
this.fnAddData = function( data, redraw )
{
var api = this.api( true );
/* Check if we want to add multiple rows or not */
var rows = $.isArray(data) && ( $.isArray(data[0]) || $.isPlainObject(data[0]) ) ?
api.rows.add( data ) :
api.row.add( data );
if ( redraw === undefined || redraw ) {
api.draw();
}
return rows.flatten().toArray();
};
$ resource.query的返回对象是$ resource对象的数组。检查是否将传递的对象添加为多行是因为$ .isPlainObject返回false。显示以下错误:
DataTables警告:table id = DataTable_Table_1 - 第0行请求的未知参数'xyz ...'。有关此错误的详细信息,请参阅http://datables.net/tn/4。
有没有人找到解决办法,或者我做错了什么?
答案 0 :(得分:0)
我最终在他们的网站上记录了这个错误,现在使用这些黑客作为修复:
使用容器对象来保存该数组
或者:在将$ resource对象传递给dataTables之前使用JSON.stringify()和JSON.parse(): -
var objectToSendToDataTables = JSON.parse(JSON.stringify(data));