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

Node.js中Adaptive Card内容无法在Bot窗口显示的解决咨询

嘿,我看到你在Node.js里用Adaptive Card的时候,文本没法自适应Bot窗口的宽度自动换行,咱们来搞定这个问题!

首先,你已经给TextBlock加了wrap: true,这步是对的,但可能还有几个关键配置没到位:

1. 确保外层容器自适应拉伸

Adaptive Card的文本块能不能自适应,很大程度上依赖外层容器的宽度设置。你需要给TextBlock的父容器(比如Container或者Column)设置width: "stretch",让它填满Bot窗口的可用宽度,这样文本块才有足够的空间去自适应换行。

2. 不要给TextBlock设置固定宽度

如果你的TextBlock显式设置了固定宽度(比如"width": 400),那它就不会自适应窗口了。确保TextBlock的width设为"auto"(或者干脆不写这个属性,默认就是auto),让它跟随父容器的宽度自动调整。

3. 补全完整的Adaptive Card结构

你的代码片段看起来缺了根AdaptiveCard元素和必要的外层容器,这里给你一个修正后的完整示例:

const adaptiveCard = {
  "type": "AdaptiveCard",
  "version": "1.0", // 这个属性必须有,指定Adaptive Card的版本
  "body": [
    {
      "type": "Container",
      "width": "stretch", // 让容器填满窗口宽度
      "items": [
        {
          "type": "TextBlock",
          "text": `Hi ${conversationId}!\n\n I'm Max I am new & still learning, but happy to help as best as I can!\n\nPlease select subject which you are interested in or type your question.`,
          "size": "medium",
          "wrap": true,
          "weight": "default",
          "color": "green",
          "isSubtle": false,
          "width": "auto" // 确保文本块自适应容器宽度
        }
      ]
    }
  ]
};

另外,我注意到你原来的文本用了单引号拼接,换成ES6的模板字符串(反引号`)会更清晰,也避免引号转义的问题。

按照这个配置调整后,文本应该就能自适应Bot窗口的宽度自动换行包裹了。如果还是有问题,可以检查下你用的Bot框架版本,确保它支持Adaptive Card 1.0及以上的规范。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 08:41:51