import React from 'react-native'; import { getProjects } from '../../api/CircleCI'; import loaderHandler from 'react-native-busy-indicator/LoaderHandler'; import ProjectList from '../projects/ProjectList'; import GlobalStyles from '../../settings/styles'; const { StyleSheet, Text, View, BackAndroid, } = React; const styles = StyleSheet.create({ container: { flex: 1, backgroundColor: GlobalStyles.get('CIRCLE_BG'), }, }); export default class Home extends React.Component { constructor() { super(); this.state = { projects: '' }; } componentWillUnmount() { BackAndroid.removeEventListener('hardwareBackPress', () => true); } componentWillMount() { BackAndroid.addEventListener('hardwareBackPress', () => true); loaderHandler.showLoader('Fetching Data'); } componentDidMount() { getProjects().then(function (data) { this.setState({ projects: data }); }.bind(this)); } render() { let list; if (this.state.projects) { list = ( ); loaderHandler.hideLoader(); } else { list = ( ); } return ( { list } ); } };