[英]MS Teams adaptive card “herocard” not work on mobile
我正在為 MS Teams 創建機器人並使用JS Microsoft Bot Framework V4 SDK 。 在我的工作中,我使用搜索消息擴展並使用它,我實現了返回自適應卡片的onSelectItem方法。 我將舉一個下面的代碼示例。
return Promise.resolve({
type: "result",
attachmentLayout: "list",
attachments: [CardFactory.heroCard(
`${file.name}`,
`${text}`,
undefined,
CardFactory.actions([
{
type: "openUrl",
title: "Open",
value: `${openLink}`
},
{
type: "openUrl",
title: "Download",
value: `${downloadLink}`
},
]),
)]
});
在我傳遞未定義的地方,這應該是圖片的路徑,但在我的實現中我不需要它。 因此,此代碼在瀏覽器和桌面版本中運行良好,這是一個屏幕截圖
但是,在移動版本上,我得到以下結果
這絕對不是正確的卡片,它沒有內容或按鈕
我想我自己找到了答案。 當消息擴展搜索被觸發時, onQuery方法被調用並假設您進行了一個查詢並收到了一個您想要顯示的值數組。 在這里,以同樣的方法,遍歷數組,你必須一次抽兩張牌。 例如
files.forEach((file: IDocumentInfo): void => {
const card: any = CardFactory.heroCard(
cutString(file.name, LIMIT),
text,
undefined,
[
{
type: "openUrl",
title: "Open",
value: "", // some value
},
{
type: "openUrl",
title: "Download",
value: "" //some value,
},
]
);
const preview: any = {
contentType: "application/vnd.microsoft.card.thumbnail",
content: {
title: `${cutString(file.name, LIMIT)}`,
text: "", // some text
}
};
而這里的變量預覽在我的例子中會響應搜索后的信息小視圖,而變量卡將負責選擇后的視圖。 並且在卡片被選中后,觸發了onSelectItem方法,我需要獲取更多關於文檔的信息
原來這里不怪自適應heroCard ,移動應用中沒有調用onSelectItem方法,或者我做錯了什么
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.