Ich habe eine Login-Schaltfläche mit Facebook SDK erstellt. Sobald der Benutzer angemeldet ist, navigiert die App zum zweiten Bildschirm (NavigatorIOS). Von diesem zweiten Bildschirm aus kann der Benutzer mit der Navigation (Zurück-Schaltfläche) zum Anmeldebildschirm zurückkehren.React native - verhindern, dass Benutzer zum Login-Bildschirm zurückkehren
Wie kann ich verhindern, dass der Benutzer zum Anmeldebildschirm zurückkehrt, wenn er bereits angemeldet ist?
index.ios.js
import React, { Component } from 'react'
import {
AppRegistry,
StyleSheet,
NavigatorIOS
} from 'react-native'
import LoginView from './src/login-view'
class MyApp extends Component {
render() {
return (
<Provider store={store}>
<NavigatorIOS
initialRoute={{
component: LoginView,
title: 'MyApp',
index: 0
}}
/>
</Provider>
);
}
}
AppRegistry.registerComponent('MyApp',() => MyApp);
Loginview
import React, {Component} from 'react'
import {
View,
Text,
StyleSheet,
TouchableHighlight,
} from 'react-native'
import CategoryView from './category-view'
import {LoginButton, AccessToken, GraphRequest, GraphRequestManager} from 'react-native-fbsdk'
class LoginView extends Component {
goToCategoryView =() =>
this.props.navigator.push({
title: 'Categories',
component: CategoryView,
})
render(){
return(
<View style={styles.container}>
<LoginButton
readPermissions={['public_profile','email']}
onLoginFinished={
(error, result) => {
if (error) {
console.log('login has error: ', result.error)
} else if (result.isCancelled) {
console.log('login is cancelled.')
} else {
AccessToken.getCurrentAccessToken().then((data) => {
this.goToCategoryView()
})
}
}
}
onLogoutFinished={() => {console.log('logged out')}} />
</View>
)
}
}
export default LoginView
Danke für Ihre Antwort. Netter Trick, habe es einfach ausprobiert. Es funktioniert gut. – John
Ich bin froh, Ihnen zu helfen! Würde es Ihnen etwas ausmachen, es zu wählen? Danke –
Eine letzte Frage zum Thema - sobald der Benutzer eingeloggt ist, wenn ich den Simulator aktualisiere, geht es zurück zum Login-Bildschirm, der die Facebook-Schaltfläche "Weiter" anzeigt. Kann man auch verhindern, dass man beim Refresh/Reload auf diesen Bildschirm zurückkehrt? – John