gpt4 book ai didi

javascript - 动态创建 React 元素

转载 作者:太空宇宙 更新时间:2023-11-04 13:52:27 25 4
gpt4 key购买 nike

我正在使用 ReactJS(有点像 Facebook)进行聊天,并且我使用 ReactJS 创建了 ChatBox,因此每当您单击在线用户时,都必须创建 ChatBox,我的问题是,是否可以创建一个 ReactJS动态组件可能将 ChatBox 添加到 div 或另一个 React 元素?

这是我的代码:https://gist.github.com/victorcastillo/2c6cb3af4650729eaa1f

最佳答案

最简单的方法是让您的容器存储一个聊天框列表,您可以根据聊天框是打开还是关闭向其添加或删除聊天框。

var ChatBox = React.createClass({
render: function () {
return <div>a new chatbox!</div>;
}
});

var Container = React.createClass({
getInitialState: function () {
return { chatboxes: [] };
},
renderChatbox: function () {
var cbs = this.state.chatboxes;
cbs.push(<ChatBox />);
this.setState({chatboxes: cbs});
},
render: function() {
return <div>Hello, do you want to open a chatbox <a onClick={this.renderChatbox}>click here</a>
{this.state.chatboxes}
</div>;
}
});

React.render(<Container name="World" />, document.body);

稍微扩展一下答案并假设您没有使用 Flux 模式,那么为了让容器知道 ChatBox 已关闭,您必须将回调从容器传递到每个 ChatBox。

关于javascript - 动态创建 React 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32421657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com