客户端组件与 Relay 通信?
Posted
技术标签:
【中文标题】客户端组件与 Relay 通信?【英文标题】:Client component communication with Relay? 【发布时间】:2016-06-11 03:54:57 【问题描述】:在 react-relay 应用程序中,我需要根据主要内容组件的状态更改我的 sidenav 组件。
它是用于客户端组件通信的简单全局存储吗?使用虚拟突变并反弹是否可以,或者我应该将我的状态保持在最不常见的父母中?
【问题讨论】:
【参考方案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 值,两个组件都会共享它。
【讨论】:
谢谢你,西奥。我对 Redux 很熟悉,我问过如何用 relay.js 做同样的事情。我多次听说 FB 本身使用通量和继电器,所以我可能也应该这样做。谢谢 那么redux标签的关系是什么? 最初,问题以 GetMeTheHellBackToRedux? 结尾,但被编辑删除了 :-) 为什么你必须使用一项技术,因为其他人正在使用它?我猜 FB 使用通量和继电器是有充分理由的。你知道 Redux 为什么不直接使用它?以上是关于客户端组件与 Relay 通信?的主要内容,如果未能解决你的问题,请参考以下文章
Renix 如何配置DHCPv4 relay场景测试——网络测试仪实操