Javascript 如何在firebase实时删除特定子级(第7页)

Javascript 如何在firebase实时删除特定子级(第7页),javascript,angular,typescript,firebase,firebase-realtime-database,Javascript,Angular,Typescript,Firebase,Firebase Realtime Database,我一直在尝试通过单击按钮删除firebase实时数据库中的特定子项。paginator提供了我打算根据请求删除的孩子的列表。 下面是我已经走了多远。我已经尝试了所有可能的在线教程,但似乎都不起作用。要么它删除了整个父节点,要么它显示了一条成功的消息,但没有任何效果 <div fxLayout fxLayoutAlign="center center"> <mat-form-field fxFlex="60%"> <input matInput

我一直在尝试通过单击按钮删除firebase实时数据库中的特定子项。paginator提供了我打算根据请求删除的孩子的列表。 下面是我已经走了多远。我已经尝试了所有可能的在线教程,但似乎都不起作用。要么它删除了整个父节点,要么它显示了一条成功的消息,但没有任何效果

<div fxLayout fxLayoutAlign="center center">
    <mat-form-field fxFlex="60%">
        <input matInput type="text" (keyup)="doFilter($event.target.value)" placeholder="Filter">
    </mat-form-field>
</div>



<table mat-table [dataSource]="dataSource" matSort>
    <ng-container matColumnDef="key">
        <th mat-header-cell *matHeaderCellDef> Action </th>
        <td mat-cell *matCellDef="let element" class="action-link">
            <a (click)="getID(item)">Approve</a> |
            <a (click)='delete(key,element)'>Delete</a>
        </td>
    </ng-container>
    <ng-container matColumnDef="name">
        <th mat-header-cell *matHeaderCellDef mat-sort-header> Name </th>
        <td mat-cell *matCellDef="let element"> {{element.name}} </td>
    </ng-container>

    <ng-container matColumnDef="phone">
        <th mat-header-cell *matHeaderCellDef mat-sort-header> PhoneNumber </th>
        <td mat-cell *matCellDef="let element"> {{element.phone}} </td>
    </ng-container>

    <ng-container matColumnDef="cartype">
        <th mat-header-cell *matHeaderCellDef mat-sort-header> Car Type </th>
        <td mat-cell *matCellDef="let element"> {{element.cartype}} </td>
    </ng-container>

    <ng-container matColumnDef="destination">
        <th mat-header-cell *matHeaderCellDef mat-sort-header> Destination</th>
        <td mat-cell *matCellDef="let element"> {{element.destination}} </td>
    </ng-container>

    <ng-container matColumnDef="date">
        <th mat-header-cell *matHeaderCellDef mat-sort-header> Date </th>
        <td mat-cell *matCellDef="let element"> {{element.date | date: 'dd/MM/yyyy'}} </td>
    </ng-container>

    <ng-container matColumnDef="time">
        <th mat-header-cell *matHeaderCellDef mat-sort-header> Time </th>
        <td mat-cell *matCellDef="let element"> {{element.time}} </td>
    </ng-container>
    <ng-container matColumnDef="location">
        <th mat-header-cell *matHeaderCellDef mat-sort-header> Your Location </th>
        <td mat-cell *matCellDef="let element"> {{element.location}} </td>
    </ng-container>

    <ng-container matColumnDef="numberOfPersons">
        <th mat-header-cell *matHeaderCellDef mat-sort-header> No of Persons </th>
        <td mat-cell *matCellDef="let element"> {{element.numberOfPersons}} </td>
    </ng-container>

    <ng-container matColumnDef="price">
        <th mat-header-cell *matHeaderCellDef mat-sort-header> Trip Price</th>
        <td mat-cell *matCellDef="let element"> {{element.price}} </td>
    </ng-container>




    <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
    <tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
</table>


<mat-paginator [pageSize]="6" [pageSizeOptions]="[2, 4, 6, 10, 20]">
</mat-paginator>
博士


您需要使用
remove()

删除

删除此数据库位置的数据

子位置的任何数据也将被删除

例如:

var adaRef = firebase.database().ref('users/ada');
adaRef.remove()
  .then(function() {
    console.log("Remove succeeded.")
  })
  .catch(function(error) {
    console.log("Remove failed: " + error.message)
  });
如果要删除特定节点,请执行以下操作:

firebase.database.ref("userProfile/ScheduledRides").child(key).remove();

谢谢我们将尝试并给出反馈。不过我已经更新了我的问题,请检查一下。好的,我看到了图像,在你的数据库中你有
userProfile
节点,在它下面你有一个ID,你需要访问该ID才能删除ScheduledRides
firebase.database.ref(“userProfile”).child(uid)。child(“ScheduledRides”).remove()是的。谢谢这解决了它
delete(uid){firebase.database().ref(
/userProfile/${uid}/ScheduledRides
).remove()。然后(()=>{alert('Successfully Deleted');});}
var adaRef = firebase.database().ref('users/ada');
adaRef.remove()
  .then(function() {
    console.log("Remove succeeded.")
  })
  .catch(function(error) {
    console.log("Remove failed: " + error.message)
  });
firebase.database.ref("userProfile/ScheduledRides").child(key).remove();