Teams机器人Hero Card按钮不显示、Tap Action无响应问题求助
Teams机器人Hero Card按钮不显示、Tap Action无响应问题求助
你好,我来帮你梳理下这个问题的原因和解决方案,这其实是Teams对Compose Extension(也就是你用来做链接展开的功能)预览卡片的限制导致的:
一、为什么Hero Card的按钮不显示?
Teams里的Compose Extension预览卡片(就是你代码里preview字段对应的Hero Card)仅支持展示基础内容:标题、描述、图片,并不支持渲染actions数组里的按钮组件。这个预览卡片的定位就是做链接内容的摘要展示,所有交互性的按钮都需要放到后面的完整Adaptive Card中。
二、为什么Tap Action点击无响应?
同样的限制:预览卡片的tap事件在Compose Extension场景下是被Teams默认接管的——点击预览卡片的默认行为就是展开显示你定义的完整Adaptive Card,而不会触发你自定义的OpenUrl动作。Teams不允许修改预览卡片的点击跳转逻辑。
三、怎么解决你的需求?
根据你的需求(让用户能打开自定义链接),推荐把交互逻辑移到完整的Adaptive Card里:
- 在Adaptive Card中添加
OpenUrl类型的按钮,用户点击预览卡片展开后,就能通过按钮打开目标链接 - 如果希望整个Adaptive Card点击都能跳转,也可以给Adaptive Card设置全局的
tap事件
举个简单的Adaptive Card修改示例:
// 你的Adaptive Card定义里加入按钮或tap事件 const card = { type: "AdaptiveCard", version: "1.4", body: [ { type: "TextBlock", text: "text1", size: "Large" }, { type: "TextBlock", text: "text2" } ], // 添加按钮 actions: [ { type: "Action.OpenUrl", title: "打开链接", url: "https://example.com" } ], // 或者设置整个卡片的tap跳转 tap: { type: "Action.OpenUrl", url: "https://example.com" } };
这样调整后,用户点击预览卡片展开Adaptive Card,就能看到按钮并触发跳转,或者直接点击Adaptive Card就能打开链接了。
备注:内容来源于stack exchange,提问作者Naina
相关产品推荐
相关产品推荐

