n1m*_*mmy 55
是! 这在大多数情况下已经在Meteor中实现.
如果与服务器的连接丢失,则客户端仍可在本地运行.数据库写入似乎在客户端上成功并立即反映在屏幕上.重新建立连接后,Meteor会将所有待处理的方法请求重新发送到服务器,并使用服务器的结果更新客户端显示.这是延迟补偿的全部结果,离线被视为服务器只是非常慢.
客户端可以监视被动"Meteor.status()"输出以查看当前连接的状态.例如,您可以使用Meteor.status来驱动弹出窗口,其中包含重新连接计时器和"立即连接"按钮,例如gmail.
编辑:当然,流星不是魔术.如果您点击"重新加载",或离开页面等,离线时您将丢失Meteor会话,并且在重新获得网络之前无法再次启动.但是,所有具有离线模式的网络应用都是如此,因此对于您的应用用户来说,这不应该让您感到意外.
rus*_*eed 13
还有另外两个选项可以解决'如果你的标签关闭,或你重新加载'问题.我还没试过,但看起来很有趣.
https://github.com/awwx/meteor-offline-data:
流星离线数据
Meteor离线数据项目的主页,实现了一个包装Meteor.Collection的"离线收集":
来自服务器的数据持久存储在浏览器数据库中,即使应用程序脱机启动,也可供应用程序使用.
用户所做的更改也会保存在浏览器数据库中,如果浏览器已关闭并重新打开,则会保留这些更改.下次应用程序联机时,更改将发送到服务器.
即使在脱机时,也会在同一应用程序上打开的浏览器窗口之间进行响应共享更新.
和 https://github.com/GroundMeteor/Meteor-GroundDB:
特征:
轻巧的足迹
广泛的浏览器支持Chrome,Safari,Firefox和Internet Explorer 9如果没有localstorage,则回退到正常的Meteor.Collection集合中的更改恢复方法的恢复工作脱机更新跨窗口选项卡支持SmartCollection仅支持脱机客户端数据库使用EJSON.minify和EJSON.maxify压缩localstorage中的数据将来在服务器端将有一个可自定义的冲突处理程序
归档时间: |
|
查看次数: |
19773 次 |
最近记录: |