DataWrapper.js
1 import PropTypes from 'prop-types'; 2 import React from "react"; 3 4 import Loading from '../components/Loading'; 5 import Error from '../components/Error'; 6 7 const DataWrapper = ({error, loading, shouldRender, render, ...rest}) => { 8 if (error) { 9 return <Error error={error} />; 10 } 11 12 if (shouldRender) { 13 return render(rest); 14 } 15 16 if (loading) { 17 return <Loading />; 18 } 19 20 return <React.Fragment />; 21 }; 22 23 DataWrapper.propTypes = { 24 error: PropTypes.string, 25 loading: PropTypes.bool, 26 render: PropTypes.func, 27 shouldRender: PropTypes.bool 28 }; 29 30 export default DataWrapper;