Preloader.js 574 B

12345678910111213141516171819
  1. import { Loader } from "./Loader";
  2. import { connect } from "react-redux";
  3. const RejectedAlert = ({ error }) => <div>Произошла ошибка: {error}</div>;
  4. const Preloader = ({ promiseName, promiseState, children }) => (
  5. <>
  6. {promiseState[promiseName]?.status === "RESOLVED" ? (
  7. children
  8. ) : promiseState[promiseName]?.status === "REJECTED" ? (
  9. <RejectedAlert error={promiseState[promiseName]?.error} />
  10. ) : (
  11. <Loader />
  12. )}
  13. </>
  14. );
  15. export const CPreloader = connect((state) => ({ promiseState: state.promise }))(
  16. Preloader
  17. );