2015-10-20 52 views
4

如果用户在多个选项卡中打开多个Web应用程序实例,则可以通过注册storage事件侦听器来通知任何其他实例所做的更改localStorage。接收到这种通知的标签然后可以作出反应并且例如根据更改更新UI。在其他选项卡中更改indexedDB条目时收到通知

索引数据库似乎没有提供类似的方便的机制,这种通知。是否必须使用localStorage在每次更改索引数据库时将“通知”发送到其他选项卡?唯一的另一种选择可能是投票,这显然不如storage事件。

回答

9

目前还没有为索引DB定义的“观察者”API。但是,它位于功能请求列表中,Mozilla和Google也有类似的提议。

https://github.com/w3c/IndexedDB/issues/51

这就是说:是的,你需要拿出一些自定义交叉表的沟通机制,如轮询,存储事件,建立MessageChannel链接器(Chrome),广播信(火狐),或者使用服务工作者作为客户之间的中继。


新闻快报!

Chrome有一个实验性的Indexed DB Observers API。你需要使用--enable-experimental-web-platform-features来运行chrome来使用它,所以它在生产中还没有用。我们很乐意获得有关它的反馈 - 文件bugs on the github repo

+0

有关这方面的消息吗?标准跟踪等?观察者可能会在什么水平上? – Leo

+2

没有消息。 W3C Tag为我们(Chrome)需要推出并获得开发人员反馈的API设计提供了一些反馈。 –

相关问题