Javascript 如何在Firestore中处理自定义用户订购

Javascript 如何在Firestore中处理自定义用户订购,javascript,firebase,google-cloud-firestore,Javascript,Firebase,Google Cloud Firestore,从todo应用程序的上下文中,用户有一个todo列表,如果他们对列表中的任意位置的项目重新排序,如何将其保存在Firebase Firestore中 我目前收集了所有待办事项。它们会根据用户ID和日期进行过滤,但我想允许自定义TODO顺序。如何实现这一点?没有内置的解决方案。我建议的解决方案是为每个用户保留一个单独的文档,以维护数组中文档的顺序(在本例中为do items),当您在UI中向用户显示数据时,使用该文档对页面上的项目进行排序。 但请记住,这种方法会增加数据库成本,因为每当创建新的to

从todo应用程序的上下文中,用户有一个todo列表,如果他们对列表中的任意位置的项目重新排序,如何将其保存在Firebase Firestore中


我目前收集了所有待办事项。它们会根据用户ID和日期进行过滤,但我想允许自定义TODO顺序。如何实现这一点?

没有内置的解决方案。我建议的解决方案是为每个用户保留一个单独的文档,以维护数组中文档的顺序(在本例中为do items),当您在UI中向用户显示数据时,使用该文档对页面上的项目进行排序。
但请记住,这种方法会增加数据库成本,因为每当创建新的todo时,您需要对2个文档执行更新。

为了保持以前的成本,同时允许每个用户订购todo项目,您可以在todo集合中为每个文档使用一个新字段。您可以尝试添加一个名为“order”的字段,该字段将为每个用户保存todo元素的顺序的数值。例如,“0”表示第一个位置,“1”表示第二个位置,依此类推。如前所述,这些数据将按用户ID和日期进行过滤