This.props.navigation 出组件
This.props.navigation out of the component
我想在我的挂钩上添加一个 this.props.navigate。这个不在我的 class 组件中,所以我有这个错误
TypeError: undefined 不是对象(正在评估“_this.props.navigation”)
如何在顶部传递构造函数道具?
还有我的钩子
function LoginApp() {
// Set an initializing state whilst Firebase connects
const [initializing, setInitializing] = useState(true);
const [user, setUser] = useState();
// Handle user state changes
function onAuthStateChanged(user) {
setUser(user);
if (initializing) setInitializing(false);
}
useEffect(() => {
const subscriber = auth().onAuthStateChanged(onAuthStateChanged);
return subscriber; // unsubscribe on unmount
}, []);
if (initializing) return null;
if (!user) {
return (
<View>
<Text style={{textAlign:'center', color:'white', fontSize:48}}>Connexion</Text>
</View>
);
}
return (
<View>
<Button onPress={()=> this.props.navigation.navigate('subscribe')}>Créer ma team</Button>
</View>
);
}
this
只能在 class 中使用,不能在 Hooks 中使用,所以你可以通过以下方式进行
function LoginApp({ navigation }) {
return (
<View>
<Button onPress={()=> navigation.navigate('subscribe')}>Créer ma team</Button>
</View>
);
}
You can also navigate in hook by installing package
npm i @react-navigation/native
then import it in your file as
import { useNavigation } from "@react-navigation/native";
const LoginApp = ()=>{
const navigation = useNavigation();
return (
<View>
<Text onPress={() => navigation.navigate("Login")}>Login</Text>
</View>
);
}
我想在我的挂钩上添加一个 this.props.navigate。这个不在我的 class 组件中,所以我有这个错误
TypeError: undefined 不是对象(正在评估“_this.props.navigation”)
如何在顶部传递构造函数道具?
还有我的钩子
function LoginApp() {
// Set an initializing state whilst Firebase connects
const [initializing, setInitializing] = useState(true);
const [user, setUser] = useState();
// Handle user state changes
function onAuthStateChanged(user) {
setUser(user);
if (initializing) setInitializing(false);
}
useEffect(() => {
const subscriber = auth().onAuthStateChanged(onAuthStateChanged);
return subscriber; // unsubscribe on unmount
}, []);
if (initializing) return null;
if (!user) {
return (
<View>
<Text style={{textAlign:'center', color:'white', fontSize:48}}>Connexion</Text>
</View>
);
}
return (
<View>
<Button onPress={()=> this.props.navigation.navigate('subscribe')}>Créer ma team</Button>
</View>
);
}
this
只能在 class 中使用,不能在 Hooks 中使用,所以你可以通过以下方式进行
function LoginApp({ navigation }) {
return (
<View>
<Button onPress={()=> navigation.navigate('subscribe')}>Créer ma team</Button>
</View>
);
}
You can also navigate in hook by installing package
npm i @react-navigation/native
then import it in your file as
import { useNavigation } from "@react-navigation/native";
const LoginApp = ()=>{
const navigation = useNavigation();
return (
<View>
<Text onPress={() => navigation.navigate("Login")}>Login</Text>
</View>
);
}