【发布时间】:2019-07-21 10:05:36
【问题描述】:
我曾经有一个本地 JSON 文件,可以将数据加载到 DataTable 中。
我正在改用 axios 和 url——axios.get 正在我项目的其他领域工作。
但是,我现在正在处理的项目区域使用 DataTable,它以特定方式接收数据(请参见下面的代码)。我已经格式化了我的代码以尝试让它与 DT 的格式一起使用,但是 我没有运气。我可以在控制台中告诉我我正在访问 JS 文件和函数,但我根本无法让 DataTables 加载我的数据。
我在下面附上了代码 sn-ps 和一个 JSFiddle,它显示了 过去的工作原理,当我只是使用本地 JSON 文件时。 p>
有什么想法吗?我喜欢 DT 及其功能,但有时使用它很痛苦。
adm.js sn-p:
import $ from 'jquery';
import DataTable from 'datatables.net';
var moment = require('moment');
export default class {
constructor() {
}
loadAdmData(response) {
let admText = $.each(response, function(idx, val) {
console.log("loadAdmData is being reached") // --- working
return {
"Ct": val.Ct,
"Status": val.AdmStatus,
"Classification": val.Classification
}
}).filter(x => x.p_h_v == "") // if p_h_v is empty, don't render it to table
if (!admText.length) $("#adm-tab").hide();
$('#adm-table').DataTable({
columns: [
{ data: "Ct" },
{ data: "Status" },
{ data: "Classification" }
],
data: admText, // ----- this is where the data comes in
responsive: true
});
}
}
index.js:
我不想把它写在这里,所以我创建了一个 Fiddle。
XML sn-p(我想要得到的):
<feed xmlns="[redacted]" xml:base="[redacted]">
<id>[redacted]</id>
<title />
<updated>2019-02-27T14:45:58Z</updated>
<entry m:etag=""8"">
<id>[redacted] />
<link rel="edit" href="[redacted]" />
<title />
<updated>2019-02-27T14:45:58Z</updated>
<author>
<content type="application/xml">
<m:properties>
<d:AdmStatus>Active</d:AdmStatus>
<d:Ct m:type="SP.Taxonomy.TaxonomyFieldValue">
<d:Classification>[redacted]</d:Classification>
</m:properties>
</content>
</entry>
JSON sn-p(我以前获取的本地文件)
{
"d": {
"results": [
{
"admstatus": "Active",
"classification": "[redacted]",
...etc
【问题讨论】:
标签: javascript jquery json datatable axios