You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过@microsoft/teams-js以编程方式关闭Teams StageView?

如何通过@microsoft/teams-js关闭由AdaptiveCard tabInfoAction打开的StageView?

我通过AdaptiveCard的tab/tabInfoAction打开StageView来展示第三方客户端页面,对应的AdaptiveCard代码如下:

{
  type: "invoke",
  title: "open in stageView",
  value: {        
    type: "tab/tabInfoAction",
    tabInfo: {
      contentUrl: "example.com",
      websiteUrl: "example.com",
      name: "View",
      entityId: "entityId",
    },
  },
}

之前在Task Module场景下,我可以调用teamsjs.dialog.submit()来关闭弹窗,但在StageView这个场景里,有没有类似的客户端方法可以在用户触发交互时关闭当前StageView?


你可以使用@microsoft/teams-js中的stageView.close()方法来关闭当前打开的StageView,具体操作如下:

  1. 先确保第三方页面已完成Teams JS SDK的初始化:
await microsoftTeams.initialize();
  1. 在用户触发交互的逻辑(比如按钮点击事件)中,调用关闭方法:
// 示例:绑定到关闭按钮的点击事件
document.getElementById('close-stage-btn').addEventListener('click', async () => {
  try {
    await microsoftTeams.stageView.close();
  } catch (error) {
    console.error('关闭StageView失败:', error);
  }
});

需要注意,该方法仅在页面已完成SDK初始化、且当前页面处于StageView容器内时有效。如果调用失败,可通过捕获异常排查问题,比如SDK未初始化、当前环境并非StageView等情况。


内容的提问来源于stack exchange,提问作者bjnsn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 08:36:11