2016-08-30 6 views
0

I Iは、API呼び出しを使用して、コメントを削除するために使用する以下の方法があります:私はnullにコメントを設定しますが角度2削除対象

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()); 
     } 
    ); 
    } 

私はまだ私のコメントリスト内のコメントを参照。それはコメントを更新する別のAPI呼び出しをしてwithouotページからそれを削除することは可能ですか?

答えて

1

ローカル変数をnullに設定するだけです。 deleteComment()が完了すると、効果は無効になります。

おそらく、あなたは

this.comments.splice(this.comments.indexOf(comment), 1); 

を意味するが、それは私が成功したコメントの削除時にヌルのコメントを除外しようとするだろうあなたが

+0

私は 'comments'オブジェクトのリストを含む' comments'変数を持っています。選択された 'comment'が削除されたら、' comments'オブジェクトリストから削除したいと思います。 'comment'はそのリストのオブジェクトです。 – TheUnreal

+1

私の回答が更新されました。配列から要素を削除する必要があります。 –

+0

ありがとう!私はそれを探していた! – TheUnreal

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"); 
    }, 

を。

+0

'this.comments'として保存されたcommentsという名前のコメントの配列がありますが、この解決法は機能しません。コメントは削除時に表示されます – TheUnreal

+0

' comments'配列のデータをそれ? – jhhoff02

関連する問題