当前位置:  开发笔记 > 编程语言 > 正文

在两个兄弟的React.js组件之间传递数据

如何解决《在两个兄弟的React.js组件之间传递数据》经验,为你挑选了1个好方法。

我在页面上有一个组件(搜索字段)的两个实例,它们之间有第二个组件(一个发出服务器调用的按钮),如下所示:

ReactDOM.render(
    
, document.getElementById('root') );

我想要做的就是将每个未经修改的参数从CardSearch字段传递给RunOnServer按钮,但如果这很简单,我会被诅咒.根据这个,我可以使用this.state.var作为道具,但是当编译代码时,这样做给了我'undefined.state.var'.React的官方文档不是很好; 他们只是告诉我自己去Flux,这看起来很糟糕......我不需要一个全新的架构来将一个简单的变量从一个组件传递到另一个组件.

我也尝试在正在进行渲染的文件中创建局部变量,但是它们作为道具传递给组件,并且您无法修改组件中的道具.



1> Mark..:

我创建了一个jsfiddle,其中包含如何使用父组件在两个组件之间共享变量的示例.

class Parent extends React.Component {
    constructor(props) {
        super(props);
        this.state = {shared_var: "init"};
    }

    updateShared(shared_value) {
        this.setState({shared_var: shared_value});
    }

    render() {
        return (
            
The shared value is {this.state.shared_var}
); } } class CardSearch extends React.Component { updateShared() { this.props.updateShared('card'); } render() { return ( ); } } class RunOnServer extends React.Component { updateShared() { this.props.updateShared('run'); } render() { return ( ); } } ReactDOM.render( , document.getElementById('container') );

推荐阅读
放ch养奶牛
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有