Skip to content

Instantly share code, notes, and snippets.

@ferndot
Created July 19, 2018 15:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ferndot/ad4bde7d385d8fcfc0e4223644a461bd to your computer and use it in GitHub Desktop.
Save ferndot/ad4bde7d385d8fcfc0e4223644a461bd to your computer and use it in GitHub Desktop.
React Navigation
import React from 'react';
import {
StyleSheet,
View,
StatusBar
} from 'react-native';
import { Provider } from 'react-redux';
import RootNavigator from './src/navigation/RootNavigator';
import store from './src/store';
export default class App extends React.Component {
render() {
return (
<Provider store={store}>
<View style={styles.container}>
<StatusBar
barStyle="light-content"
backgroundColor="#ff4c4c"
/>
<RootNavigator />
</View>
</Provider>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#fff',
},
});
import React from 'react';
import { createBottomTabNavigator } from 'react-navigation';
import HomeScreen from '../screens/app/HomeScreen';
import AppointmentsScreen from '../screens/app/AppointmentsScreen';
import SearchScreen from '../screens/app/SearchScreen';
import SettingsScreen from '../screens/app/SettingsScreen';
export default createBottomTabNavigator(
{
Home: HomeScreen,
Appointments: AppointmentsScreen,
Search: SearchScreen,
Settings: SettingsScreen,
},
{
initialRouteName: 'Home'
}
);
import React, { Component } from 'react';
import {
StyleSheet,
AsyncStorage,
ScrollView,
Button
} from 'react-native';
class HomeScreen extends React.Component {
static navigationOptions = {
title: 'Profile',
};
signOutAsync = async () => {
await AsyncStorage.clear();
this.props.navigation.navigate('Auth');
};
render() {
return (
<ScrollView style={styles.container}>
<Button title="Sign Out" onPress={this.signOutAsync} />
</ScrollView>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1
}
});
export default HomeScreen;
import React from 'react';
import { createSwitchNavigator } from 'react-navigation';
import AuthNavigator from './AuthNavigator';
import AppNavigator from './AppNavigator';
export default createSwitchNavigator(
{
Auth: AuthNavigator,
App: {
screen: AppNavigator,
navigationOptions: {
headerStyle: {
backgroundColor: '#ff4c4c',
},
headerTintColor: '#fff',
headerTitleStyle: {
fontWeight: 'bold',
}
}
}
},
{
initialRouteName: 'Auth',
}
);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment