我试图在json文件的自适应卡中检索所选内容。因此,当选择过敏选项'peanut'时,我希望将其赋值给一个变量。但是代码一直在抛出一个错误。
自适应卡码:
{
"type": "message",
"speak": "...",
"attachments": [
{
"contentType": "application/vnd.microsoft.card.adaptive",
"content": {
"type": "AdaptiveCard",
"version": "1.0",
"body": [
{
"type": "TextBlock",
"text": "Almost there...",
"size": "large",
"weight": "bolder"
}
],
"actions": [
{
"type": "Action.ShowCard",
"title": "Beef",
"card": {
"type": "AdaptiveCard",
"body": [
{
"type": "TextBlock",
"text": "What are you allergic to?",
"size": "medium",
"wrap": true
},
{
"type": "Input.ChoiceSet",
"value": "BeefAllergy",
"id": "BeefAllergy",
"style": "expanded",
"isMultiSelect": false,
"isCompact": false,
"choices": [
{
"title": "Peanut",
"value": "peanut"
},
{
"title": "Seafood",
"value": "seafood"
}
]
}
],
"actions": [
{
"type": "Action.Submit",
"title": "Next",
"data": {
"mealOptions": "beef"
}
}
]
}
}
]
}
}
]
}下面是我试图将它存储在一个变量中的方式:
lunchAllergy= session.message.attachments.content.actions.card.body[1].choices[1].value
session.send(lunchallergy)这是一个错误:
错误:无法读取未定义的属性“操作”
发布于 2017-11-20 08:40:57
在我对您的自适应卡内容的测试中,实际上,当您的用户单击Action.Submit按钮时,您的机器人可以在session.message.value中获得用户的选择,并且可以将您想要的内容存储在变量中。

有关详细信息,您可以参考https://github.com/Microsoft/BotBuilder-Samples/blob/master/Node/cards-AdaptiveCards/app.js的示例。
https://stackoverflow.com/questions/47347361
复制相似问题