我正在学习React的过程。目前我有几个组件链接为父子,通过它们的通信很容易与回调。
我有一个表(反应组件)和一个小模态的ajax形式(无反应)。当我从服务器收到响应(一个项目)时,我想将该项目添加到表中。
我的主要问题是,是否可能从外部触发组件状态更改react(在这种情况下对服务器响应)?
Can you trigger a component state change outside a component?
是。只是一个简单的例子
在你的react组件中设置一个全局可用的闭包,当函数被触发时,它将更新它的状态。
componentWillMount(){ globalVar.callback = (data) => { // `this` refers to our react component this.setState({...}); }; }
然后当你的ajax的响应回来,你可以使用返回的数据触发事件
globalVar.callback(data);
或者为了更强大的功能,请设置自定义事件和全局侦听器
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。