【问题标题】:Does Adaptive Cards Templating work in Composer?自适应卡片模板是否可以在 Composer 中使用?
【发布时间】:2021-02-02 08:06:14
【问题描述】:

我想像这样向自适应卡片添加按钮:

    "actions": [
        {
            "$data": "${collection}",
            "type": "Action.Submit",
            "title": "${prop1}",
            "data": {
                "value": "${prop2}"
            }
        }
    ],

这在https://adaptivecards.io/designer/ 中运行良好

但在 Composer 的 .lg 中却没有。

为此工作:

"$data": "${collection}",

我需要删除 ${collection} 周围的引号。

但是我无法让每个项目的 prop1 和 prop2 显示工作。当您在 $data 字段中声明带有数组的元素时,该元素应该被重复,然后绑定的属性将属于该数组的每个元素。这也没有发生。

我开始认为 Composer 不支持模板,我需要替换值并使用 lg 语法进行映射。

【问题讨论】:

标签: adaptive-cards bot-framework-composer


【解决方案1】:

简短回答:没有

机器人需要通过Adaptive Cards templating 库向模板应用数据来显式“扩展”模板。 Composer 源代码从未提及自适应卡片,并且在整个 Bot Builder .NET SDK 中唯一提到的自适应卡片是将附件内容识别为自适应卡片,因此可以应用正确的内容类型。 Composer 和 Bot Builder 甚至都不依赖于 Adaptive Cards SDK,更不用说 Adaptive Cards 模板库了。

这个问题的某些形式已经在 GitHub 上被问过几次了:

你有几个选择:

  1. 使用这些 GitHub 问题中描述的 Bot Framework LG 的内置数据绑定功能,而不是依赖自适应卡片模板
  2. Export the Composer runtime 这样您就可以像使用普通机器人一样为其添加功能
  3. 官方feature request 要求 Composer 团队将自适应卡片模板整合到 Composer 中

【讨论】:

    猜你喜欢
    • 2022-01-08
    • 2020-08-10
    • 2021-05-06
    • 2023-04-10
    • 2021-12-05
    • 1970-01-01
    • 2019-06-29
    • 2021-10-19
    • 2021-04-25
    相关资源
    最近更新 更多