import React, { useState } from "react"; import Preloader from "../../components/preloader/Preloader"; //Хук для формирования пропсов управления состояний прелоадера, экспортируемых в компоненты страницы, где планируется вызывать прелоадер export const MagicPreloaderHook = () => { //Стейт для видимости прелоадера const [preloaderVisibleState, setPreloaderVisibleState] = useState(true); //Стейт для текста прелоадера const [preloaderTextState, setPreloaderTextState] = useState('загрузка'); //Сеттер для смены состояний прелоадера function setPreloaderParams (visibleState: boolean, textState?: string) { setPreloaderVisibleState(visibleState) textState ? setPreloaderTextState(textState) : true, [] }; return { setPreloaderParams, PreloaderComponent: ( {preloaderVisible = preloaderVisibleState, preloaderText = preloaderTextState} ) => ( ) } }