2017-04-26 67 views
0

我嘗試使用react-navigation! 我的應用程序有兩個組件:A和B 從A我去組件B,B裏面我做了一些函數,並得到像isreload類型布爾值的值,我想回到A並把它放到A!如果接收器的值正在重新載入,我會做一些功能!任何人都可以建議我解決這個問題!非常感謝你們!如何在關閉組件B時運行組件A的某些功能

這是我在成分B的代碼,我不知道如何在組件接收器重裝並檢查是否重新加載正確的:重新渲染組件A,失敗:留

navigateToNewsFeed = (routeName, _reload) => { 
 
     const backActionWithParams = NavigationActions.back({ 
 
      index: 0, 
 
      actions: [NavigationActions.navigate({ 
 
       routeName, 
 
       params: { isreload: _reload } 
 
      })] 
 
     }); 
 
     this.props.navigation.dispatch(backActionWithParams); 
 
    }

回答

0

這個問題與原生反應中的事件系統有關。

我建議你向DeviceEventEmitter

您可以通過DeviceEventEmitter.emit('shouldUpdate', reRender);成分B中發送的消息,並在A組份註冊聽衆通過

DeviceEventEmitter.addListener('shouldUpdate', (reRender) => { 
     if(reRender){ 
      this.setState(...) 
     } else { 
      // stay 
     } 
    }); 

記得導入DeviceEventEmitter

相關問題