我使用以下方法使用API调用删除注释:
deleteComment(comment) {
//My attack
let body = JSON.stringify({
commentID: comment.id
});
comment = null;
this.http.request('deleteComment',
{ body:body, method:'POST' })
.map((res:Response) => res.json())
.subscribe(
data => {
console.log("COMMENT DELETED");
},
error => {
console.log(error.text());
}
);
}
虽然我将评论设置为null
,但我仍会在评论列表中看到评论。是否可以从页面中删除它而不进行另一个API调用来刷新注释?
答案 0 :(得分:1)
您只需将本地变量设置为null
即可。 deleteComment()
完成后效果无效。
也许你的意思是
this.comments.splice(this.comments.indexOf(comment), 1);
但目前还不清楚“我的评论列表”是什么意思
答案 1 :(得分:0)
我会尝试在成功删除评论后过滤掉空白评论。没有经过测试,但看起来像是:
this.http.request('deleteComment',
{ body:body, method:'POST' })
.map((res:Response) => res.json())
.subscribe(
data => {
this.comments.filter(c => c !== null)
console.log("COMMENT DELETED");
},
假设您要在注释部分中保留一系列注释以进行迭代。