Mos*_*mer 4 navigator react-native
我在我的index.ios.js文件中实例化如下:
render() {
return(
<Navigator
style={styles.navigator}
renderScene={this.renderScene}
initialRoute={{
component: test,
navigationBar: <NavigationBar title="home" />
}}/>
);
}
Run Code Online (Sandbox Code Playgroud)
从这个相同的文件我有一个功能,我希望能够在导航器上触发一个动作,例如
resetStack(){
// navigator.popToTop();
}
Run Code Online (Sandbox Code Playgroud)
我该如何实现这一目标?我以为我必须使用名为refs的东西,并尝试添加如下引用:
render() {
return(
<Navigator
ref="ref1"
style={styles.navigator}
renderScene={this.renderScene}
initialRoute={{
component: test,
navigationBar: <NavigationBar title="home" />
}}/>
);
}
Run Code Online (Sandbox Code Playgroud)
然后调用它:resetStack(){// navigator.popToTop(); ref1.popToTop(); }
但是这会导致错误:无法找到变量ref1
我该如何实现这一目标?如何触发子组件中的方法?
对于其他任何有此问题的人.我与上面的代码非常接近但忽略了将this.refs.referenceName添加到调用中,最终的代码是:
render() {
return(
<Navigator
ref="ref1"
style={styles.navigator}
renderScene={this.renderScene}
initialRoute={{
component: test,
navigationBar: <NavigationBar title="home" />
}}/>
);
}
Run Code Online (Sandbox Code Playgroud)
并称之为:
resetStack(){
// navigator.popToTop();
this.refs.ref1.popToTop();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3170 次 |
| 最近记录: |