将变量从一个组件传递到另一个组件中的另一个组件



i具有许多按钮的ChooseLevel组件。一旦我单击一个按钮onLevelSelected函数,它将调用Action Creator,该功能创建将返回操作类型,此外,它将将我重定向到qPage组件。在qPage组件中,我进行了一些计算,然后将结果放在总变量中。这是我的代码:

chooselevel.js

class ChooseLevel extends Component {
    constructor(props) {
        super(props);
    }
    onLevelSelected(levelNumber) {
        this.props.levelSelected(levelNumber);
    }
    render(){
      <Button key={1} onPress={this.onLevelSelected.bind(this, 1)}>
      <Button key={2} onPress={this.onLevelSelected.bind(this, 2)}>
      <Button key={3} onPress={this.onLevelSelected.bind(this, 3)}>
      ....
    }
}

我的动作创造者看起来像这样:

import { Actions } from 'react-native-router-flux';
export const levelSelected = (levelNumber) => {
  return (dispatch) => {
      dispatch({
        type: 'level_selected', 
        payload: levelNumber
      });
      Actions.qPage();  // redirects me to qPage component 
  };
};

qpage.js

class qPage extends Component {
   constructor(props){
      ...
   }
   calc(){
       .... some calculation
       total = result of previous calculation 
   }
   render(){
     ....
     ....
   }
} 

我如何通过总计变量从qpage到choeselevel页面?

您需要做的是,我将一步一步:

1)创建一个动作并传递该动作中的计算值。

2)通过道具(还原)访问该计算的值

3)您可以使用ComponentWillupDateProp(NextProps),在此功能中,将此新的道具分配给了类。

欢呼:)

相关内容

  • 没有找到相关文章

最新更新