Reactjs 如何将refs与react本机路由器流量一起使用
对于使用Redux的两个简单组件,parent和child,我可以使用Reactjs 如何将refs与react本机路由器流量一起使用,reactjs,react-native,react-router,react-redux,Reactjs,React Native,React Router,React Redux,对于使用Redux的两个简单组件,parent和child,我可以使用refs,来调用child方法。但如何使用上面的库“react native router flux”实现同样的效果,在哪里可以设置场景的ref 父组件 var Parent = new React.createClass({ render : function() { return (<Child ref={(child) => {this.child = child}}) }
refs
,来调用child方法。但如何使用上面的库“react native router flux”实现同样的效果,在哪里可以设置场景的ref
父组件
var Parent = new React.createClass({
render : function() {
return (<Child ref={(child) => {this.child = child}})
}
// able to trigger child.somefunction via this.child.getWrappedInstance().somefunction()
})
module.exports = connect(select)(Parent)
使用上述库后子组件的渲染函数
render: function() {
return (
<Router>
<Scene>
<Scene key="WelcomeModal" component={WelcomeModal} title="welcomeTitle" initial={true}
navigationBarStyle={styles.welcomeModal_navigationBarStyle}
titleStyle={styles.welcomeModal_titleStyle}
rightTitle='INFO'
rightButtonStyle={styles.baseModal_rightButtonStyle}
rightButtonTextStyle={styles.baseModal_rightButtonTextStyle}
rightButtonIconStyle={styles.baseModal_rightButtonIconStyle}
ref={(_WelcomeModal) => {this._WelcomeModal = _WelcomeModal}} //need some way to add ref here
/>
</Scene>
</Router>
)
}
render:function(){
返回(
{this.\u WelcomeModal=\u WelcomeModal}}//需要一些方法在这里添加ref
/>
)
}
快速回答是:你不能。你需要这个做什么?
ref
的大多数使用可以通过其他方式解决。要使用react本机路由器流量,流量应该像父组件一样,应该只连接到redux store,而不是子组件,而且流量似乎不正确,我可以知道在父类中调用child函数需要什么吗?我在父级添加了一个PushNotificationController,因此它在所有场景中都存在,另一种方法是在每个子组件中添加相同的控制器为什么不使用回调?
render: function() {
return (
<Router>
<Scene>
<Scene key="WelcomeModal" component={WelcomeModal} title="welcomeTitle" initial={true}
navigationBarStyle={styles.welcomeModal_navigationBarStyle}
titleStyle={styles.welcomeModal_titleStyle}
rightTitle='INFO'
rightButtonStyle={styles.baseModal_rightButtonStyle}
rightButtonTextStyle={styles.baseModal_rightButtonTextStyle}
rightButtonIconStyle={styles.baseModal_rightButtonIconStyle}
ref={(_WelcomeModal) => {this._WelcomeModal = _WelcomeModal}} //need some way to add ref here
/>
</Scene>
</Router>
)
}