我正在尝试在 React 中使用此代码:
export const JsonToTable = (jsonArr) => {
var cols = [];
for (var i = 0; i < jsonArr.length; i++) {
for (var key in jsonArr[i]) {
if (cols.indexOf(key) === -1) {
cols.push(key);
}
}
}
var table = document.createElement("table");
var tr = table.insertRow(-1);
for (var i = 0; i < cols.length; i++) {
var th = document.createElement("th");
th.innerHTML = cols[i];
tr.appendChild(th);
}
for (var i = 0; i < jsonArr.length; i++) {
tr = table.insertRow(-1)
for (var j = 0; j < cols.length; j++) {
var tabCell = tr.insertCell(-1);
tabCell.innerHTML = jsonArr[i][cols[j]];
}
}
return table;
}
但是 React 抱怨这些方法:
insertRow()
appendChild()
innerHTML
我知道innerHTML 的等价物是dangerouslySetInnerHTML 但我不想使用它。如果我按原样运行此代码,则会得到返回的对象(表)不是 React 类型的错误。如何将此函数编写为 React 组件?我想要实现的是从 json 动态创建一个表。如果有另一种方法可以实现这一点,我也可以研究一下。谢谢。
眼眸繁星
相关分类