我想在Microsoft chatbot中添加和发送消息,而不在Bot窗口底部的textArea上键入该消息。 我需要将消息作为反应组件的道具(botframework-webchat)。
我尝试了link中给出的建议,但这对我不起作用。
我该怎么做?
我试过了。
import { Chat } from "botframework-webchat";
class ChatBox extends Component {
componentDidMount() {
document.getElementsByClassName('wc-shellinput')[0].value = "testMsg"
document.getElementsByClassName('wc-send')[0].click()
}
render() {
return (
<React.Fragment>
<div>
<Chat
directLine={{
secret:
"...."
}}
user={{ id: "Test" }}
bot={{ id: "Demo" }}
resize={"detect"}
ref="chatBox"
/>
</div>
</React.Fragment>
)
}
}
答案 0 :(得分:1)
我不是React的专家,但我发现在React中,我们只能通过其状态更新输入值。通过source code,似乎有一个名为onChangeText()
的入口函数。
因此,请尝试使用以下代码段来更新输入值:
componentDidMount(){
console.log(this.chat);
this.chat.shellRef.props.onChangeText('testMsg');
}