如何根据 firebase json 键删除特定记录
how to delete particular record based on firebase json key
显示数据的HtmlCode。密钥作为参数传递
<div class="col-xs-12 col-md-6 col-md-offset-3" *ngIf="loadedPosts.length >= 1>
<ul class="list-group">
<li class="list-group-item" *ngFor="let post of loadedPosts">
<h3>Title: {{ post.title}}</h3>
<span>Content: {{ post.content}}</span>
<p> <a (click)="onDeletePost(post.id)" style="cursor: pointer;">Delete</a></p>
</li>
</ul>
</div>
获取时 Posts:
onFetchPosts() {
this.isLoading = true;
this.postService.fetchPosts().subscribe(
(posts)=>{
this.isLoading = false;
this.loadedPosts = posts;
},(error)=>{
this.error = error.error;
}
);
}
Json 键作为参数
删除时 Post:
onDeletePost(key:string) {
if(confirm('Are you sure?')){
this.postService.deletePost(key).subscribe(
(responseData)=>{
console.log(responseData);
this.onFetchPosts();
}
);
}
}
deletePost(key:string) {
return this.http.delete<void>(
'https://ng-complete-guide-257c0.firebaseio.com/posts.json',{
params: new HttpParams().set('name', key)
}// even passing parameter it clears all record instead of particular record
);
}
当您针对 'https://ng-complete-guide-257c0.firebaseio.com/posts.json
发出 HTTP DELETE
请求时,数据库将删除整个 posts
节点。如果您想删除特定的 post,您需要针对 'https://ng-complete-guide-257c0.firebaseio.com/posts/yourpostkey.json
.
发出删除请求
如果您不知道要删除的 post 的键,您必须先执行查询以确定该键。
显示数据的HtmlCode。密钥作为参数传递
<div class="col-xs-12 col-md-6 col-md-offset-3" *ngIf="loadedPosts.length >= 1>
<ul class="list-group">
<li class="list-group-item" *ngFor="let post of loadedPosts">
<h3>Title: {{ post.title}}</h3>
<span>Content: {{ post.content}}</span>
<p> <a (click)="onDeletePost(post.id)" style="cursor: pointer;">Delete</a></p>
</li>
</ul>
</div>
获取时 Posts:
onFetchPosts() {
this.isLoading = true;
this.postService.fetchPosts().subscribe(
(posts)=>{
this.isLoading = false;
this.loadedPosts = posts;
},(error)=>{
this.error = error.error;
}
);
}
Json 键作为参数
删除时 Post:
onDeletePost(key:string) {
if(confirm('Are you sure?')){
this.postService.deletePost(key).subscribe(
(responseData)=>{
console.log(responseData);
this.onFetchPosts();
}
);
}
}
deletePost(key:string) {
return this.http.delete<void>(
'https://ng-complete-guide-257c0.firebaseio.com/posts.json',{
params: new HttpParams().set('name', key)
}// even passing parameter it clears all record instead of particular record
);
}
当您针对 'https://ng-complete-guide-257c0.firebaseio.com/posts.json
发出 HTTP DELETE
请求时,数据库将删除整个 posts
节点。如果您想删除特定的 post,您需要针对 'https://ng-complete-guide-257c0.firebaseio.com/posts/yourpostkey.json
.
如果您不知道要删除的 post 的键,您必须先执行查询以确定该键。