实际上,我正在开发一个需要通过网络套接字更新的自定义选项卡。
问题是,当用户更改选项卡或应用程序(例如退出自定义选项卡应用程序以使用团队中的聊天功能)时,应用程序被“杀死”并且它不会使用 Web 套接字拦截从服务器发出的数据然后更新 View 。
我的用例是在服务器推送数据时更新 View ,即使选项卡没有聚焦也是如此。
有没有办法做到这一点 ?
最佳答案
我认为 Teams 中的“选项卡”与浏览器中的“选项卡”之间存在混淆。在浏览器中,您可以打开一个选项卡,但可以是 活跃在另一个选项卡上。在这种情况下,websocket 可能正在运行,更新内容,这样当用户返回选项卡时,它已经更新了。
相比之下,在 Teams 中,当用户查看选项卡时,它会有效地加载到 iframe 中。当用户浏览离开时,iframe 被销毁,当他们回来时,它重新创建 iframe,并且页面 - 完全重新加载 - 再次。因此,没有必要,也无法在未聚焦时将数据“推送”到选项卡。但是,当它 是 在焦点/被用户使用时,您当然可以使用例如 signalr 使其保持最新状态。
关于javascript - 未集中注意力时更新团队自定义选项卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62392585/