我已经从API中请求了数据,该API以JSON格式返回,然后写入存储在Web服务器上的JSON文件。然后,我使用Angular.js将已存储的JSON文件中的过滤内容显示到网页。
我用来将API响应写入文件的NodeJS代码如下:
var doNotStringify = {
currentTarget: true,
delegateTarget: true,
originalEvent: true,
target: true,
toElement: true,
view : true,
count : true,
message : true,
error : true,
}
tl.employees.all(function(response){
fs.writeFile(file, JSON.stringify(response, function(key, value) {
var result = value;
if(doNotStringify.hasOwnProperty(key)) {
result = undefined;
}
return result;
}, 4));
});
除了'数据&#39>之外,除去了所有不需要的元素。我无法删除上述函数中的Data,因为它会删除元素的内容。结果是以下JSON文件:
{
"Data": [{
"FirstName": "Test1",
"LastName": "User",
}, {
"FirstName": "user",
"LastName": "user",
}, {
"FirstName": "Ropbert",
"LastName": "Jones",
}, {
"FirstName": "Jim",
"LastName": "Morrison",
}]
}
编辑“数据”时手动元素,它可以在HTML / Angular中找到以下内容:
<td>{{player.firstName}}</td>
但是,当写入包含&#39;数据&#39;的新JSON文件时元素,它会中断并且不会显示在网页上。
所以我的问题:
有没有办法排除&#39;数据&#39;使用fs.writeFile和JSON.stringify写入文件的元素?
或者,我可以在Angular中做些什么吗?
答案 0 :(得分:0)
如果你只想删除数据部分,你可以用内容创建另一个元素。在Angular中,我认为你可以用你的模型做到这一点。这是一个例子(不是角度特定的):
var playerdata = {
"Data": [{
"FirstName": "Test1",
"LastName": "User",
}, {
"FirstName": "user",
"LastName": "user",
}, {
"FirstName": "Ropbert",
"LastName": "Jones",
}, {
"FirstName": "Jim",
"LastName": "Morrison",
}]
};
playerdata = playerdata["Data"];
console.log(playerdata);
playerdata.forEach(function(player){
console.log(player.FirstName);
})