[英](0 , _reactNavigation.createAppContaner) is not a function Evaluating App.js Loading App.js
我為谷歌登錄編寫代碼。
expo react-native
我無法解決這個問題:
(0 , _reactNavigation.createAppContaner) is not a function
Evaluating App.js
Loading App.js
app.js
import LoginScreen from "./screens/LoginScreen";
import ProfileScreen from "./screens/ProfileScreen";
// react Navigation Setup
import { createAppContaner, createSwitchNavigator } from "react-navigation";
const MainNavigator = createSwitchNavigator({
Login: { screen : LoginScreen },
Profile: { screen: ProfileScreen }
});
const App = createAppContaner(MainNavigator);
export default App;
./screens/LoginScreen
import React, { Component } from 'react';
import { Text, View, StyleSheet, Button } from 'react-native';
import * as Google from 'expo-google-app-auth';
const IOS_CLIENT_ID =
'375911328301-jlsms1k99gtk8qlcnkd6asqkrpsahphe.apps.googleusercontent.com';
//const ANDROID_CLIENT_ID =
// "YOURCLIENTID";
export default class LoginScreen extends Component {
signInWithGoogle = async () => {
try {
const result = await Google.logInAsinc({
isoClientId: IOS_CLIENT_ID,
//androidClientId:ANDROID_CLIENT_ID,
success: ['profile', 'email'],
});
if (result.type === 'success') {
console.log('LoginScreen.js', result.user.giveName);
this.prop.navigation.navigate('Profile', {
username: result.user.giveName,
}); // after google login rederect to profile
return result.accessToken;
} else {
return { cancelled: true };
}
} catch (error) {
console.log('LoginScreen.js', error);
return { error: true };
}
};
render() {
return (
<View style={styles.container}>
<Button title="Login" onPress={this.signInWithGoogle} />
</View>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#FFF',
alignItem: 'center',
justifyContent: 'center',
},
});
./screens/ProfileScreen
import React, { Component } from "react";
import {Text, View, StyleSheet, Button} from "react-native";
export default class ProfileScreen extends Component{
render(){
return(
<View style={styles.container}>
<Text> profilescreen </Text>
<Text style={{ fontSize: 20 , fontWeight:"bold" }}> welcome,
{this.props.navigation.getParam("username")}</Text>
<Button title="sign out" onPress={() => this.props.navigation.navigate("Login")}/>
</View>
)
}
}
const styles = StyleSheet.create({
container:{
flex:1,
backgroundColor: "white",
alignItem : "center",
justifyContent: "center"
}
});
我的大學項目需要它
您在導入時有拼寫錯誤,請使用以下行導入 createAppContainer。
import { createAppContainer, createSwitchNavigator } from "react-navigation";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.