gpt4 book ai didi

react-native - 如何从导航器外部调用导航器?

转载 作者:行者123 更新时间:2023-12-04 04:23:35 25 4
gpt4 key购买 nike

我的应用程序中有一个选项卡栏,我不希望每次呈现新路线时导航转换都会受到影响。因此我想将标签栏放置在导航器之外,但是在这种情况下如何触发导航操作?我无法访问从导航器外部传递给 renderScene 函数的导航器对象。

以下是 app.js 中返回的内容:

            <View>
<Navigator
ref="navigator"
initialRoute={{name: "start"}}
renderScene={this.renderScene.bind(this)}
configureScene={this.configureScene.bind(this)}
/>
<TabBar navigator={???} style={styles.nav} />
</View>

最佳答案

好的,我想我解决了这个问题。问题似乎是组件的第一次渲染时引用不可用。我通过以下方法解决了这个问题:

<Navigator
ref={(r) => { this.navigatorRef = r; }}
initialRoute={{name: "start"}}
renderScene={this.renderScene.bind(this)}
configureScene={this.configureScene.bind(this)}
/>
{this.state ? <TabBar navigator={this.state.navigatorRef} style={styles.nav} /> : null }

并添加了这个:

componentDidMount() {
this.setState({navigatorRef: this.navigatorRef});
}

只是为了让组件与 TabBar 一起再次渲染。

关于react-native - 如何从导航器外部调用导航器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41487877/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com