适当的自适应卡片 Input.ChoiceSet 模板结构

Proper Adaptive Card Input.ChoiceSet Templating Structure

数据 json 需要什么才能将选项设置为在 Input.ChoiceSet 上选中?

卡片Json

{
    "type": "AdaptiveCard",
    "body": [
        {
            "type": "Input.ChoiceSet",
            "placeholder": "Placeholder text",
            "choices": [
                {
                    "title": "Choice 1",
                    "value": "1"
                },
                {
                    "title": "Choice 2",
                    "value": "2"
                }
            ],
            "style": "expanded",
            "id": "sample"
        }
    ],
    "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
    "version": "1.0"
}

样本数据Json

如果我想将Choice 1的值设置为selected,这个结构应该是什么?

{
    // I've tried this:
    "sample": {
        "value": "1"
    }
}
-----------------------------
{
    // Also tried
    "sample": "1"
}

我正在阅读 Adaptive Card schema for Input.ChoiceSet 并且我看到卡片 json "value": 属性 可以在卡片中设置默认值,但我希望有一种方法可以从模板 json 中做到这一点。否则,我必须先 "inject" 将其放入卡片 json 才能构建卡片。

根据您的样本,您必须这样做:

            [...]
            "placeholder": "Placeholder text",
            "value": 1,
            "choices": [
                {
                    "title": "Choice 1",
                    "value": "1"
                },
             [...]

根据您的选择数组中的值之一设置初始值。它仅在其中一个条目的相应值完全相同时才有效。 如果您要的是 "selected: true" 或类似的东西,则没有。

为此使用模板时,您必须返回一个选定的 属性 并将其设置为 "value":{$root.selected}