【问题标题】:How can I count the number of posts from another user? [duplicate]如何计算其他用户的帖子数量? [复制]
【发布时间】:2020-04-14 01:28:21
【问题描述】:

在我的应用程序中,我使用 Firebase 实时数据库,每个用户都可以发布一个或多个帖子。这些帖子存储在/posts 下,每个帖子都包含一个userId 对象。

如何进行查询以计算特定用户使用this database structure 发布的帖子数?

我正在使用 Typescript 和 Angular 8。

【问题讨论】:

  • 请不要再问同样的问题。你已经问过这个问题stackoverflow.com/questions/59440268/…
  • 嗯。除了最初的语言障碍之外,理解他们的要求并不难。 @PeterHaddad,下面的答案最好是在这里还是在原始问题上?
  • 原题已关闭,无法回答

标签: angular typescript firebase firebase-realtime-database


【解决方案1】:

假设您要查询的用户的 ID 为 -LwSHv8HcYek347sEmXT。您可以使用帖子作者的sorting and filtering 搜索帖子:

let userId = '-LwSHv8HcYek347sEmXT';

let query = firebase.database.ref('posts').orderByChild('userId/key').equalTo(userId);

query.once('value')
  .then((querySnapshot: DataSnapshot) => {
    let postCount = querySnapshot.numChildren();

    // do something with postCount

    // do something with each post's data if you need
    querySnapshot.forEach((postSnapshot: DataSnapshot) => {

    });
  })
  .catch((err: any) => {
    console.log('Error counting posts: ', err);
  });

【讨论】:

  • 现在它正在工作,但问题是如何将变量 postCount 附加到 html 部分
  • 最简单的形式,你可以使用document.getElementById('postCountHolder').textContent(postCount);。但是因为您使用的是角度,所以您可以使用控制器和范围变量,如{{ postCount }}。搜索“以角度更改文本”之类的内容。
  • 谢谢,,它正在工作
猜你喜欢
  • 1970-01-01
  • 2018-10-27
  • 1970-01-01
  • 1970-01-01
  • 2022-11-22
  • 1970-01-01
  • 1970-01-01
  • 2022-06-19
  • 1970-01-01
相关资源
最近更新 更多