阵营NavigatorIOS不是取代()
问题描述:
我用我的根组件一个NavigatorIOS组件,并希望登录之间切换的登录画面更新标题:阵营NavigatorIOS不是取代()
navToLogin() {
this.refs.nav.replace({
title: "Login",
component: LoginScene,
rightButtonTitle: "Sign Up",
onRightButtonPress: this.navToRegister.bind(this)
});
}
navToRegister() {
this.refs.nav.replace({
title: "Sign Up",
component: RegisterScene,
rightButtonTitle: "Login",
onRightButtonPress: this.navToLogin.bind(this)
});
}
render() {
return (
<NavigatorIOS
ref = "nav"
style={styles.navigator}
initialRoute={{
component: LoginScene,
title: "Login",
rightButtonTitle: "Sign Up",
onRightButtonPress: this.navToRegister.bind(this)
}}
/>
);
}
虽然观点正确更新时,标题和rightButton在nav.replace()调用后不会更改。当我使用nav.push()一切都按预期工作。
我用这个组件错了吗?
答
你没有使用它错了,这是一个错误NavigatorIOS。如果可以的话,它可能是值得使用Navigator,而不是更好的支持(Facebook实际上是在内部使用它)
GitHub上的相关问题:https://github.com/facebook/react-native/issues/894 – Lapixx
..这实际上是https://github.com/facebook/react-native/issues/476的副本 – Lapixx