我曾经在用户文档中存储计数器。但是我经常在运行一些代码之前检查Meteor.user()的现有内容。计数器每秒更新一次,因此代码会一遍又一遍地重新运行。创建单独的计数器集合是解决此问题的方法吗?
计数器示例:
counters: {
generatedDocs: {
total: 482360
}
posts: {
total: 23
},
comments: {
total: 200
}
}
是的。 如果要跨多个会话存储计数器变量和/或使其对多个用户可见,则需要在数据库中创建一个计数器集合并使用它。 如果您只需要一个会话的计数器,则可以将它们存储在窗口对象的变量中。
如果这是针对一个会话的,您可以使用 Meteor 的会话 api。正如Goodword所说,如果这是跨会话和用户的,您可以将计数器存储在自己的集合中。如果您要计数的是自己的集合,如果它适合您的用例,您也可以使用 count() 函数。