Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何将refs与react本机路由器流量一起使用_Reactjs_React Native_React Router_React Redux - Fatal编程技术网

Reactjs 如何将refs与react本机路由器流量一起使用

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}}) }

对于使用Redux的两个简单组件,parent和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>
   )
}