我有一个类似于以下形式的决策文件集合:
{
_id: ObjectId("23de23802fe925b6ef7162a4"),
userId: 6de4,
decision: true,
datetime:ISODate("2016-07-27T08:22:47.169Z")
},
{
_id: ObjectId("507f1f77bcf86cd799439011"),
userId: 23f4,
decision: true,
datetime:ISODate("2016-02-03T11:48:50.456Z")
},
.
.
.
Run Code Online (Sandbox Code Playgroud)
我正在努力想出一种将这些文档分组为连续日期时间组的方法.即文档应该属于特定组,如果它小于,比如组中至少一个其他文档的5分钟.
目标是实现在"会话"中做出的决策群.然后可以使用聚合(例如每个决策的平均时间等)对这些"会话"组进行进一步的见解.
如果不能使用MongoDb的聚合框架,可以使用map-reduce或其他方法完成.我愿意接受建议.
描述问题的另一种方法是将以下算法应用于文档集合.
这将使集合具有所需的"会话"分组.当然,这只是描绘问题的一种方式.我不知道有什么方法可以遍历有序集合,同时使用MongoDb以这种方式进行分组.
可以这样做吗?有没有其他方法可以使用MongoDb获得相同的结果?
我不知道如何检测 mat-sidenav-container 何时在角材料 2 中滚动。
当用户滚动时,我想在我的组件上调用一个方法。但是,当使用 sidenav-container 时,不再在窗口上触发滚动事件。
而是<mat-sidenav-content cdkscrollable></mat-sidenav-content>添加了一个额外的元素,这就是滚动条所在的位置。如果无法直接访问该组件以在其上放置(scroll)="myMethod()"事件侦听器,如何检测该组件上何时发生滚动。
有任何想法吗?