我正在构建一个 Cordova 应用程序,它围绕门票列表呈现 CRUD 操作。主页显示列表,您可以单击任何列表项以获取有关特定工单的更多详细信息。
到达主页/
并显示一个tickets
模板。到达工单页面/ticket/:_id
并显示一个ticket
模板。
该/
路由订阅了与当前用户相关的所有票证(即将推出分页)。我假设这些数据缓存在 minimongo 的客户端。
当用户单击以查看有关票证的更多信息时,我尝试通过Tickets.findOne(Router.current().params._id)
. 如果我向这条路线添加单票订阅,它会起作用。如果我摆脱订阅,它就不起作用。
这没有多大意义,因为初始票证订阅应该在 minimongo 中缓存所有可见票证客户端。当做一个Tickets.findOne(Router.current().params._id)
-- Meteor 不应该在不需要新订阅的情况下寻找 minimongo 的数据吗?
即使应用程序处于脱机状态,我也会使用GroundDB来处理集合和方法。它可以工作,但不能解决跨路由的订阅问题。
关于如何最好地跨路线缓存数据以使应用程序快速运行并减少数据库行程的任何建议?