I am using react native navigation by wix for my application.
It is working fine if I just have the Navigation.startTabBasedApp
in my application like this:
import React, { Component } from 'react';
import Amplify from 'aws-amplify-react-native';
import { Navigation } from 'react-native-navigation';
import { registerScreens } from './screens';
import aws_exports from './aws-exports';
Amplify.configure(aws_exports);
registerScreens();
return Navigation.startTabBasedApp({
tabs: [
{
label: 'Home',
screen: 'pumped.HomeScreen',
title: 'Pumped',
},
{
label: 'Sell',
screen: 'pumped.ListScreen',
title: 'Sell an item',
},
{
label: 'Profile',
screen: 'pumped.ProfileScreen',
title: 'Profile',
},
],
});
However I want to render either a single screen or this tab based app conditionally based on wether the user is signed in or not. But when i add the two inside a app component and return either one based on a condition (true in my code just for testing) it doesn't return anything?
Here is my code:
import React, { Component } from 'react';
import Amplify from 'aws-amplify-react-native';
import { Navigation } from 'react-native-navigation';
import { registerScreens } from './screens';
import aws_exports from './aws-exports';
Amplify.configure(aws_exports);
registerScreens();
class App extends Component {
render() {
if (true) {
return Navigation.startSingleScreenApp({
screen: {
screen: 'pumped.RegisterScreen',
navigatorStyle: {},
navigatorButtons: {},
title: 'Register',
},
});
}
return Navigation.startTabBasedApp({
tabs: [
{
label: 'Home',
screen: 'pumped.HomeScreen',
title: 'Pumped',
},
{
label: 'Sell',
screen: 'pumped.ListScreen',
title: 'Sell an item',
},
{
label: 'Profile',
screen: 'pumped.ProfileScreen',
title: 'Profile',
},
],
});
}
}
export default App;
Thanks.