/
Alex_Ural
/
opencode
Обзор
Документация
Войти
/
Alex_Ural
/
opencode
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
dev
packages/console/core/src/util/memo.ts
18 строк
392 B
Frank
wip: zen
18 сен 2025, 17:59
18 сен 2025, 17:59
4ceabdf
Код
Авторство
О чём код?
export function memo<T>(fn: () => T, cleanup?: (input: T) => Promise<void>) { let value: T | undefined let loaded = false const result = (): T => { if (loaded) return value as T loaded = true value = fn() return value as T } result.reset = async () => { if (cleanup && value) await cleanup(value) loaded = false value = undefined } return result }