169 похожих чатов

Написал хук, для создания лоадеров (индикаторов процесса какого-либа запроса и

прочее)

нормально ли так и есть ли тут какие-то подводные камни, на которые я ненароком наткнулся?

import { useState } from 'react';

type Loaders<T extends Record<string, boolean>> = {
loaded: <LoaderField extends keyof T>(loader: LoaderField) => boolean;
setLoader: <LoaderField extends keyof T>(
loader: LoaderField,
value: boolean
) => void;
};

export const useLoaders = <T extends Record<string, boolean>>(
loadersObj: T
): Loaders<T> => {
const [loaders, setLoaders] = useState(loadersObj);

const setLoader = <LoaderField extends keyof T>(
loader: LoaderField,
value: boolean
): void => {
setLoaders({
...loaders,
[loader]: value,
});
};

const loaded = <LoaderField extends keyof T>(
loader: LoaderField
): boolean => {
return loaders[loader];
};

return {
setLoader,
loaded,
};
};

1 ответов

6 просмотров
Vetro- Автор вопроса

короче тут все ок видимо, спс))

Похожие вопросы

Обсуждают сегодня

А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
Как Вы считаете нормально ли в двадцатых годах 21 века в ВУЗах Российской Федерации обучать студентов работе с TASM? Не слишком ли это "архаично"? (Если оффтоп или флейм для э...
Spiker01
52
Привет всем. Не знаю, удачный ли чатик я выбрал для вопроса, но он как будто в целом про концепцию фп и конкретно про Haskell. Прочитал, что в целом в мире фп нет идеи мутабел...
Gellert Cringewald
15
Комрады, хотел уточнить. Проперть в OnDestroy юнита-хозяина по-прежнему доступна? И еще уточнение: finalization юнита наступает раньше или позже OnDestroy?
Ed Doc
48
Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
Всем привет! поделитесь, пож-та, как кто дебажил / решал проблему с 504 Time out ошибкой от nginx, когда стучишься на свой vapor сервер? в логах /var/log/nginx/error.log е...
Paul
24
Как добавить ссылку в Быстрый доступ в Проводнике windows 10? Нашёл, как на power shell сделать, но может есть способ через Дельфи?
А
31
@helgispbru @Dreamer_0x01 @Pathologic93 @webber_12 Не уверен, что вам всем это жутко интересно, но в продолжение недавнего диалога отправлю свои наброски. Хочу понять, правил...
Андрей [aharito] Харитонов
13
Всем, привет! Подскажите, пожалуйста, самую лёгкую, быструю, лаконичную и адаптивную тему для WP? Бесплатно или чтобы можно было в РФ оплатить доступ к теме. Раньше брал на...
Евгений Грак
14
Подскажите, пожалуйста, как с массивами данных в 1.4 работать? Есть сниппет, который возвращает массив объектов. В 3 все понятно на блейде, а здесь ..
Никита Ковалёв
12
Карта сайта