客户端组件与Relay通信?

时间:2016-02-28 00:02:34

标签: reactjs redux relayjs

Inside react-relay app我需要根据主要内容组件的状态更改sidenav组件。

是客户端组件通信的简单全局存储吗?是否可以使用虚拟变异并反弹,或者我应该将我的状态保持在最不常见的父母身上?

1 个答案:

答案 0 :(得分:1)

如果您使用Redux,则可以将应用程序与全局状态连接。然后,可以通过将相同的道具传递给它们来设置两个组件。

假设您定义了自己的应用。在渲染中你应该有类似的东西:

 render() {
        const {myValue} = this.props;
        return (<div>
                <MyFirstComponent propValue={myValue}/>
                <MySecondComponent propValue={myValue}/>
                </div>
        );
 }

然后在App的末尾

App.propTypes = {
    myValue: PropTypes.object
};

function mapStateToProps(state) {
        return {
            myValue: state.myReducer.myValue   
        }
}

export default connect(mapStateToProps)(App)

每当您发送一个将返回myValue更新值的操作时,两个组件都将共享它。