【发布时间】:2017-10-12 16:57:56
【问题描述】:
我有点理解 DynamicView 是什么。然而,与此同时,我对它的真正含义感到困惑。
根据我读过的文章,我知道如何使用它,例如here。但是,它是什么?
【问题讨论】:
标签: lokijs
我有点理解 DynamicView 是什么。然而,与此同时,我对它的真正含义感到困惑。
根据我读过的文章,我知道如何使用它,例如here。但是,它是什么?
【问题讨论】:
标签: lokijs
假设您有一个数据库,您运行一个查询,例如“给我所有标记为已登录的用户”。您会取回该结果,并出于申请的目的对其进行处理。如果您在不同时间运行相同的查询,您将获得不同的结果集。
在 LokiJS 中,集合是事件发射器,动态视图被注册以监听这些事件。这意味着他们知道集合中发生的更改,并将其应用于视图的结果集。在上述情况下,如果创建动态视图,无论何时调用data(),都会得到与数据库当前状态相对应的结果,而不是创建视图时的结果。您运行一次查询,就可以忘记更新它的结果,动态视图会为您完成(通过 data() 方法,这是惰性的)。
这可能非常有用 - 但它也会阻止您在应用程序中存储状态历史记录,因此请谨慎使用!
动态视图的正确定义是自实现视图。
【讨论】: