【问题标题】:How to pass state to static navigation in react native?如何在本机反应中将状态传递给静态导航?
【发布时间】:2018-07-23 10:07:26
【问题描述】:

需要将状态传递给导航但this.state. 不起作用,这是代码

      this.setState({
      demo:"some title"
    });
.....

 static navigationOptions = {
        headerRight:(<View>
          <Text>{this.state.demo}</Text>
                  </View>),
        };

【问题讨论】:

  • 想在顶部导航栏中显示状态值。
  • 需要获取页面标题并显示在顶部
  • 实际上上面代码中的所有内容。我必须访问顶部导航栏中的状态

标签: react-native navigation


【解决方案1】:

尝试设置类似这样的参数:

componentWillMount() {
     const {setParams} = this.props.navigation;
     setParams({demotxt:this.state.demo});
}

..

static navigationOptions = ({ navigation  }) => {

       const {state} = navigation;
           return {
               headerRight: (<View>
                 <Text>{state.params.demotxt}</Text>
                         </View>)
           }

};

【讨论】:

    【解决方案2】:

    我已经修改了这一行,你应该这样称呼它。

    <Text>{this.state.demo}</Text>
                      </View>),
    

    另外,你应该先用常量声明你的状态,然后传递常量, 每当调用 setState 时。渲染函数将被调用。像这样的。

     static navigationOptions = {
    const title = this.state.demo;
                headerRight:(<View>
                  <Text>{this.state.demo}</Text>
                          </View>),
                };
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-31
      • 1970-01-01
      • 2018-10-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多