如何从 json 文件更快地加载到我的数据表中?
How can I load from a json file faster into my datatables?
这是我的 json 文件
(有 5000 个项目):
{
"data": [{
"name": "file1.html",
"date": "2019-01-29T20:33:57.00163Z",
"size": "348"
},
{
"name": "file2.xml",
"date": "2019-01-29T20:33:57.000167Z",
"size": "401"
},
{
"name": "file3.html",
"date": "2019-01-29T20:33:57.000171Z",
"size": "1314"
}
]
}
我是这样加载的:
var table = $('.table').DataTable({
"pageLength": 10,
"data":{{ output.data|raw }},
但是真的很慢,数据表加载到我的页面需要 10 秒。
所以我尝试了服务器端的方法:
var table = $('.table').DataTable({
"pageLength": 10,
"processing": true,
"serverSide": true,
"ajax": "{{ absolute_url(asset('files/data.json')) }}",
但是现在加载更慢了...
而且分页不再起作用了。
有没有机会提高性能?
当您处理客户端大型数据集(我定义为超过 1000 个)时,您可能希望切换到数据表数据的服务器端实现。
table = $('#example').DataTable( {
serverSide: true,
deferLoading: 57
ajax: {
url:"files/data.json",
},
});
这是我的 json 文件 (有 5000 个项目):
{
"data": [{
"name": "file1.html",
"date": "2019-01-29T20:33:57.00163Z",
"size": "348"
},
{
"name": "file2.xml",
"date": "2019-01-29T20:33:57.000167Z",
"size": "401"
},
{
"name": "file3.html",
"date": "2019-01-29T20:33:57.000171Z",
"size": "1314"
}
]
}
我是这样加载的:
var table = $('.table').DataTable({
"pageLength": 10,
"data":{{ output.data|raw }},
但是真的很慢,数据表加载到我的页面需要 10 秒。
所以我尝试了服务器端的方法:
var table = $('.table').DataTable({
"pageLength": 10,
"processing": true,
"serverSide": true,
"ajax": "{{ absolute_url(asset('files/data.json')) }}",
但是现在加载更慢了... 而且分页不再起作用了。
有没有机会提高性能?
当您处理客户端大型数据集(我定义为超过 1000 个)时,您可能希望切换到数据表数据的服务器端实现。
table = $('#example').DataTable( {
serverSide: true,
deferLoading: 57
ajax: {
url:"files/data.json",
},
});