MS Bot Framework class 名称和标签 ID 已更改

MS Bot Framework class names and label IDs are changed

我一直在我的项目中使用 MS bot 框架 - Chat bot,并且我在 UI 和 Bot 的其他功能中进行了一些自定义。

我的大部分自定义都是基于 Class 聊天的名称和标签 ID window

示例

我把聊天输入区的占位文字自定义如下。

document.querySelectorAll('[aria-label="Sendbox"]')[0].placeholder = "Type your question";

之前好好的,今天突然报错,调试后发现标签名由Sendbox变成了Message input box 。因此我需要将我的代码更改为

document.querySelectorAll('[aria-label="Message input box"]')[0].placeholder = "Type your question";

类似地,class 名称在很多地方也发生了变化,一个例子是,早些时候 class 机器人消息的名称包含 content 而现在它改为 markdown

所以我想知道,

  1. 为什么要更改,
  2. 基于它将发生的变化,重要的是
  3. 如何避免这些变化

不幸的是,您受制于网络聊天。 类(和其他组件)可能会发生变化,网络聊天团队确实记录了这些变化,因此不应完全依赖。

示例 02.branding-styling-and-customizing/b.idiosyncratic-manual-styles 演示了开发人员如何通过网络聊天的“createStyleSet”实现自定义。此方法是非标准的,并且被 Web Chat 团队认为不是最佳实践。但是,它可供需要进行特定更改的开发人员使用,超出 Web Chat 通过其默认样式选项提供的功能。

不推荐,因为发布新版本的 Web Chat 时可能会发生重大更改。

这同样适用于任何依赖网络聊天及其内部运作的外部项目,例如您的项目。 (公平地说,任何依赖的应用程序都可能发生这种情况。网络聊天团队至少非常友好地通知了您。)

至于为什么 类 等会发生变化……有很多原因。最有可能的是,有一个或多个新功能正在推出。使用可能在其他地方使用或可能包含相关样式或功能的相同 类,在给定实例中可能不再可行或不合适。

希望得到帮助!