Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/403.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在firebase中计算喜欢的人_Javascript_Firebase_Firebase Realtime Database - Fatal编程技术网

Javascript 在firebase中计算喜欢的人

Javascript 在firebase中计算喜欢的人,javascript,firebase,firebase-realtime-database,Javascript,Firebase,Firebase Realtime Database,我是Firebase的新手,现在遇到了两个困难 我的部分web应用程序加载照片并收集“喜欢”——♥' 为了他们 这是我在实时数据库中的简单结构,这是一个简化模型: "photos": { "-h42Z1w9wD4G7AtPcdPb": { "author": "9f0f5c90-fa9c-47b9-9757-4fecf640e78c", "path": "/images/9932988.jpg" }, "-d9n0ME8H7zYvCBu9pf3": { "au

我是Firebase的新手,现在遇到了两个困难

我的部分web应用程序加载照片并收集“喜欢”——♥' 为了他们

这是我在实时数据库中的简单结构,这是一个简化模型:

"photos": {
  "-h42Z1w9wD4G7AtPcdPb": {
    "author": "9f0f5c90-fa9c-47b9-9757-4fecf640e78c",
    "path": "/images/9932988.jpg"
  },
  "-d9n0ME8H7zYvCBu9pf3": {
    "author": "5db561db-56f9-4d5b-8b32-30d487c03dbf",
    "path": "/images/9865733.jpg"
  },
  <...>
}

"likes": {
  "-s2kEFg6U02KzKf8w0Hi": {
    "from": "9f0f5c90-fa9c-47b9-9757-4fecf640e78c",
    "to": "-d9n0ME8H7zYvCBu9pf3"
  },
  "-rh186npGIuXqZ58KX3v": {
    "from": "5db561db-56f9-4d5b-8b32-30d487c03dbf",
    "to": "-h42Z1w9wD4G7AtPcdPb"
  }
  <...>
}
“照片”:{
“-h42Z1w9wD4G7AtPcdPb”:{
“作者”:“9f0f5c90-fa9c-47b9-9757-4fecf640e78c”,
“路径”:“/images/9932988.jpg”
},
“-d9n0ME8H7zYvCBu9pf3”:{
“作者”:“5db561db-56f9-4d5b-8b32-30d487c03dbf”,
“路径”:“/images/9865733.jpg”
},
}
“喜欢”:{
“-s2kEFg6U02KzKf8w0Hi”:{
“发件人”:“9f0f5c90-fa9c-47b9-9757-4fecf640e78c”,
“至”:“-d9n0ME8H7zYvCBu9pf3”
},
“-rh186npGIuXqZ58KX3v”:{
“发件人”:“5db561db-56f9-4d5b-8b32-30d487c03dbf”,
“至”:“-h42Z1w9wD4G7AtPcdPb”
}
}
  • 我如何在后端计算有多少“喜欢”将id为“9f0f5c90-fa9c-47b9-9757-4fecf640e78c”的用户放入,或者有多少“喜欢”获得id为“-s2kEFg6U02KzKf8w0Hi”的照片

  • 我用query.limitToLast(10)加载了10张照片。如何加载下10张照片:从最后11张到20张,然后从21张到30张进行分页


  • 我过去和你一样困惑。现在感谢上帝


    查看这篇文章,它向您展示了如何计算事务中的子项数量和更新计数器。不过,我想补充一点,云功能仍处于测试阶段。

    谢谢!我试过这个方法,它真的很有效。但现在在我看来,实时数据库只是一个普通的JS对象。NoSQL数据库(如MongoDB)没有任何优势,例如聚合()或比较。这是真的吗?我个人很喜欢NoSQL数据库。您必须在开始时投入一点精力,但是一旦您获得了适合您的查询的数据库结构,那么您就会看到NoSQL数据库与普通的老式SQL样式的联接和表相比有多快。这对于Firebase实时数据库尤其如此。从我对它的丰富经验来看,我可以保证它确实是“实时的”!您会惊讶于数据检索和更新到实时数据库的速度就比较和聚合而言,您确实可以构建数据库以满足您的需要,而无需它。这就是NoSQL数据库如此灵活的原因。另外,如果你认为我的回答适合你的问题,那么请接受我的回答。这将使其他有同样问题的人更容易找到这个解决方案。相信我,我遇到过很多人,他们都在问同样的问题。谢谢你的解释!我认为这是解决类似案件的思考方法。