我试图让 ionic 2 应用程序的用户删除列表项。使用 Angular 使用 Firebase 构建

英国行

下面的代码显示了我的创建列表方法、HTML 和删除方法。我正在努力使删除方法起作用。我收到错误“删除未定义”?我不确定是否必须在删除方法中添加 $key?

//Delete method, this is the method I am struggling. i want a user to be able to delete the list item on slide
deleteList(list) {
    list.remove(list);
   }

//HTML
<ion-list>
     <ion-item-sliding *ngFor="let list of list" >
         <ion-item>
           <p>An item:
             <strong>{{list.list1}}</strong>
           </p>
           <p>Oooooh is this important:
             <strong>{{list.list2}}</strong>
           </p>
            <p>Another item:
             <strong>{{list.list3}}</strong>
            </p>    
       </ion-item>

         <ion-item-options side="left">
             <button ion-button color="danger" (click)="deleteList(list.$key)">
                <ion-icon name="md-trash">Delete</ion-icon>
             </button>
        </ion-item-options>
       </ion-item-sliding>
    </ion-list>

//Create list

  firebase.auth().onAuthStateChanged(user => {
      if (user) {
        this.listRef = firebase
          .database()
          .ref(`/userProfile/${user.uid}/List`);
      }
    });
  }

    createList(
    list1: string,
    list2: string,
    list3: string

  ): ThenableReference {
    return this.listRef.push({
      list1: list1,
      list2: list2,
      list3: list3,
    });
  }

Firebase 图像

马赫什·贾达夫

您的代码中有一些错误。您可能想使用 *ngFor="let list of lists" // 列表是您要在其上使用循环的数组或集合,而列表只是一个引用(您可以使用任何) 列表集合中存在的项目

第二个错误是,在删除函数中,您应该使用您用来引用您的 firebase 数据库的引用,在您的情况下,您应该使用 this.listRef 而不是 list

删除你可以使用这样的东西(假设你的列表中有键(firebase键))

<ion-item-options side="left">
  <button ion-button color="danger" (click)="deleteList(list.$key)">
    <ion-icon name="md-trash">Delete</ion-icon>
  </button>
</ion-item-options>

始终建议为这些操作使用服务,因为您将在一个中心位置拥有所有与 Firebase 相关的操作和参考,并且您可以从任何页面轻松使用它。

删除数据的最简单方法是调用 remove() 对该数据位置的引用(来自 firebase docs),以便您可以使用它从 firebase 存储中删除所选项目:

您可以从以下位置获取经过身份验证的用户或当前登录的用户:

import { User } from 'firebase/app'; // import user from firebase

authenticatedUser: User; //declare variable authenticatedUser as type User

firebase.auth().onAuthStateChanged(user => {
  if (user) {
    this.authenticatedUser = user;
}

然后删除:

deleteList(key) {
firebase
   .database()
    .ref(`/userProfile/${this.authenticatedUser.uid}/List/${key}`).remove()
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

IONIC2使用Firebase构建自定义音频流应用程序

来自分类Dev

使用 Angular CLI 在 Angular 2 中部署新的应用程序构建后通知用户

来自分类Dev

使用 AngularFire2 的 Ionic Firebase 应用程序

来自分类Dev

尝试在Firebase中使用android构建聊天应用程序,如何生成2个用户应相等的唯一chatID?

来自分类Dev

构建使用 Firebase 的 Angular 应用程序时如何处理所有 Observable

来自分类Dev

我使用 socketio 构建了一个 Flask 聊天应用程序,我试图发送在线用户的数量,但用户只会增加而不会减少

来自分类Dev

我正在尝试使用Firebase为Java桌面应用程序构建后端

来自分类Dev

为什么我的Ionic2应用程序始终作为Android应用程序使用?

来自分类Dev

为什么我的Ionic2应用程序始终作为Android应用程序使用?

来自分类Dev

在Phonegap / ApacheCorova和Ionic框架中构建移动应用程序是否必须使用Angular.js?

来自分类Dev

使用ionic构建phonegap应用程序时发生错误

来自分类Dev

如何使用ionic 2 / angular 2和打字稿设置firebase

来自分类Dev

我可以使用 angular 版本 1 构建带有离子的应用程序吗

来自分类Dev

使用lodash的Angular 2 CLI构建

来自分类Dev

使用lodash的Angular 2 CLI构建

来自分类Dev

使用 ionic 2 Production 构建 OpenWeatherMap 时出错

来自分类Dev

构建ionic2应用程序失败

来自分类Dev

使用Phonegap构建Angular应用程序不起作用

来自分类Dev

使用 webpack 构建 angular 6 应用程序时出错

来自分类Dev

使用 Ionic / Angular 循环浏览来自 Firebase 的逗号分隔图像

来自分类Dev

使用Ionic构建应用程序,移动Web应用程序和桌面Web应用程序

来自分类Dev

由于Angular 2验证属性,Ionic 2构建失败

来自分类Dev

使用UMD捆绑包捆绑Angular 2应用程序(不构建供应商捆绑包)

来自分类Dev

如何使用angular2构建/使用滑块?

来自分类Dev

如何调试使用Gradle构建的Play 2应用程序

来自分类Dev

我们可以将Angular Material 2与Ionic一起使用吗?

来自分类Dev

我们可以将Angular Material 2与Ionic一起使用吗?

来自分类Dev

在Firebase中使用Ionic2切换

来自分类Dev

使用Ionic2与Firebase身份验证

Related 相关文章

  1. 1

    IONIC2使用Firebase构建自定义音频流应用程序

  2. 2

    使用 Angular CLI 在 Angular 2 中部署新的应用程序构建后通知用户

  3. 3

    使用 AngularFire2 的 Ionic Firebase 应用程序

  4. 4

    尝试在Firebase中使用android构建聊天应用程序,如何生成2个用户应相等的唯一chatID?

  5. 5

    构建使用 Firebase 的 Angular 应用程序时如何处理所有 Observable

  6. 6

    我使用 socketio 构建了一个 Flask 聊天应用程序,我试图发送在线用户的数量,但用户只会增加而不会减少

  7. 7

    我正在尝试使用Firebase为Java桌面应用程序构建后端

  8. 8

    为什么我的Ionic2应用程序始终作为Android应用程序使用?

  9. 9

    为什么我的Ionic2应用程序始终作为Android应用程序使用?

  10. 10

    在Phonegap / ApacheCorova和Ionic框架中构建移动应用程序是否必须使用Angular.js?

  11. 11

    使用ionic构建phonegap应用程序时发生错误

  12. 12

    如何使用ionic 2 / angular 2和打字稿设置firebase

  13. 13

    我可以使用 angular 版本 1 构建带有离子的应用程序吗

  14. 14

    使用lodash的Angular 2 CLI构建

  15. 15

    使用lodash的Angular 2 CLI构建

  16. 16

    使用 ionic 2 Production 构建 OpenWeatherMap 时出错

  17. 17

    构建ionic2应用程序失败

  18. 18

    使用Phonegap构建Angular应用程序不起作用

  19. 19

    使用 webpack 构建 angular 6 应用程序时出错

  20. 20

    使用 Ionic / Angular 循环浏览来自 Firebase 的逗号分隔图像

  21. 21

    使用Ionic构建应用程序,移动Web应用程序和桌面Web应用程序

  22. 22

    由于Angular 2验证属性,Ionic 2构建失败

  23. 23

    使用UMD捆绑包捆绑Angular 2应用程序(不构建供应商捆绑包)

  24. 24

    如何使用angular2构建/使用滑块?

  25. 25

    如何调试使用Gradle构建的Play 2应用程序

  26. 26

    我们可以将Angular Material 2与Ionic一起使用吗?

  27. 27

    我们可以将Angular Material 2与Ionic一起使用吗?

  28. 28

    在Firebase中使用Ionic2切换

  29. 29

    使用Ionic2与Firebase身份验证

热门标签

归档