未聚焦时更新团队自定义选项卡

inf*_*dev 5 javascript microsoft-teams

实际上,我正在开发一个需要通过网络套接字更新的自定义选项卡。

问题在于,当用户更改选项卡或应用程序(例如退出自定义选项卡应用程序以在团队中使用聊天功能)时,应用程序会被“杀死”,并且它不会使用 Web 套接字拦截从服务器发出的数据,然后更新视图。

我的用例是在服务器推送数据时更新视图,即使选项卡未聚焦。

有没有办法做到这一点 ?

Hil*_*now 1

我认为 Teams 中的“选项卡”与浏览器中的“选项卡”的概念之间存在混淆。在浏览器中,您可以打开一个选项卡,但在另一个选项卡上处于活动状态。在这种情况下,Websocket 可能正在运行,更新内容,以便当用户返回选项卡时,内容已经更新。

相比之下,在 Teams 中,当用户查看选项卡时,它会有效地加载到 iframe 中。当用户浏览离开时,iframe 会被销毁,当他们回来时,它会重新创建 iframe,并且页面会再次完全重新加载。因此,没有必要,并且在未获得焦点时无法将数据“推送”到选项卡。但是,当它处于焦点/被用户使用时,您当然可以使用例如 signalr 来使其保持最新。