【发布时间】:2019-12-03 07:15:12
【问题描述】:
我已经在我的 React 网站中集成了 Botframework V3,并包含了 Web Chat 组件的自定义构建。我已经包含了样式的 cdn
<link href="https://cdn.botframework.com/botframework-webchat/latest/botchat.css" rel="stylesheet" />
当我在输入标签中输入值时,我会收到此错误。
WebChat.js
import React from 'react';
import { Chat } from 'botframework-webchat';
export default class extends React.Component {
render() {
return (
<React.Fragment>
<Chat
directLine={{ secret: ' SECRET_KEY' }}
user={{ id: 'user_id', name: 'user_name' }}/>
</React.Fragment>
);
}
}
错误
无法在未安装的组件上找到节点。不变的 node_modules/react-dom/cjs/react-dom.development.js:57 findCurrentFiberUsingSlowPath node_modules/react-dom/cjs/react-dom.development.js:4438 查找当前主机光纤 node_modules/react-dom/cjs/react-dom.development.js:4450 查找主机实例 node_modules/react-dom/cjs/react-dom.development.js:18562 findDOMNode node_modules/react-dom/cjs/react-dom.development.js:19068 Chat.handleKeyDownCapture /home/React/Botframework webchat/BotFramework-WebChat-3/built/Chat.js:160
【问题讨论】:
-
为什么使用
Fragment而不是直接返回Chat? -
好吧,我会在我的网站中为聊天机器人 UI 添加更多代码。
-
您为什么要尝试使用 BotFramework-WebChat 的 v3“botchat”版本?尽管您的机器人使用 v3 BotFramework SDK,但您不需要匹配网络聊天的版本。 v4 版本更丰富,使用 React 设计和构建,并且集成得更好。如果您需要示例代码,请告诉我。我在 React 项目中运行 v3 和 v4 机器人。很高兴提供一些示例代码。 (注意:WebChat 的 v3 版本已停用,将被弃用。)
-
您在网络聊天构建中使用的 React 版本是否与您在网站中使用的版本相同?
-
将 react 版本降级为 react: 16.5.2 解决了问题@EricDahlvang
标签: reactjs botframework