Javascript 跟踪Knockout.js订户
我在服务器上存储了大量实时数据。层次结构从未改变,但值不断变化。在我的客户机上,我将层次结构复制为一个淘汰模型,并使用重复的ajax调用保持更新 在任何时候,只有一小部分层次结构会显示在我的客户机中,因此我只想对当前显示的值进行ajax调用 是否有一些“标准”的方法来计算一个可观察对象的当前订户数量,或者更好的是跟踪每个订户以测试其可见性 谢谢Javascript 跟踪Knockout.js订户,javascript,ajax,knockout.js,Javascript,Ajax,Knockout.js,我在服务器上存储了大量实时数据。层次结构从未改变,但值不断变化。在我的客户机上,我将层次结构复制为一个淘汰模型,并使用重复的ajax调用保持更新 在任何时候,只有一小部分层次结构会显示在我的客户机中,因此我只想对当前显示的值进行ajax调用 是否有一些“标准”的方法来计算一个可观察对象的当前订户数量,或者更好的是跟踪每个订户以测试其可见性 谢谢 感谢您回复re getSubscriptions.Count()。这给了我一个解决方案——让ajax轮询函数在viewmodel每次轮询时搜索订阅服务
感谢您回复re getSubscriptions.Count()。这给了我一个解决方案——让ajax轮询函数在viewmodel每次轮询时搜索订阅服务器。但我真正想做的是,允许轮询函数在每次订阅数变为零或从零变为零时得到通知,以便它可以启动和停止轮询-这将比每次搜索viewmodel更高效。完美的情况是,如果可以有一个计算的可观察对象作为主可观察对象的子对象,比如“subscriptionsCount()”,那么轮询者(或任何其他人)就可以订阅它
我考虑过的另一种方法是将我的“值”包装在一个计算出的可观测值中。。这提供了一种在项目需要时通知轮询器的机制,但无法解决在不再需要时通知轮询器的问题。在
可观察的
self.name = ko.observable("Mike");
//...
var numberOfSubscribers = self.name.getSubscriptionsCount();
太好了,谢谢!(如果可以的话,我会对你的评论投赞成票)。该功能是否记录在任何地方?(我想看看我还缺少什么。再次感谢。@user2062035