2017-04-06 44 views
0

我正在使用我的React Native應用程序的「react-native-router-flux」,我似乎無法弄清楚我的自定義導航欄應該如何與我的組件進行通信?NavBar應該如何與React Native中的組件進行通信?

我有以下代碼。

NavigationRouter.js:

<Scene key='addDrillScreen' component={AddDrillScreen} navBar={AddDrillNavBar} /> 

AddDrillScreen.js:

class AddDrillScreen extends React.Component { 
    performSave() { 
    // Want to call performSave() when NavBar is clicked 
    } 

} 

AddDrillNavBar.js:

class AddDrillNavBar extends React.Component {  
    render() { 
    return (
     <View style={styles.saveButton}> 
     <TouchableOpacity onPress={() => { 
      // ??? How do I trigger the performSave() on my AddDrillScreen? 
     }}> 
      <Text style={styles.saveButtonText}>Save</Text> 
     </TouchableOpacity> 
     </View> 
    ) 
    } 

我不明白這兩個怎麼溝通

+1

這是一個類似的問題。希望這可以解決您的問題。 http://stackoverflow.com/questions/32846655/how-do-i-call-execute-a-function-from-another-component-in-react-native –

回答

0

你有一對夫婦這裏

  • ˚F選項,使performSave靜態
  • 移動performSave到不同的班級,一個可以分享,是不是在你的通量庫這樣的動作反應成分
  • 使用的最佳實踐如果你使用一個。例如,在redux中,您應該將該代碼包含在動作創建者中。
相關問題