All MicroEvals
Напиши на чистом TypeScript (без сторонних библиотек) полноц...
Create MicroEval

Напиши на чистом TypeScript (без сторонних библиотек) полноц...

Prompt

Напиши на чистом TypeScript (без сторонних библиотек) полноценную систему реактивности на основе Signals (по аналогии с SolidJS или Vue 3 reactivity). Требования к коду: Реализуй примитивы signal(value), computed(fn) и effect(fn). Реализуй авто-трекинг зависимостей (когда effect или computed автоматически подписываются на вызываемые внутри них сигналы). Добавь обработку циклических зависимостей (throw error при обнаружении бесконечного цикла). Реализуй батчинг обновлений: batch(() => { ... }), чтобы эффекты запускались только один раз после завершения всех изменений внутри функции batch. Напиши 3 Unit-теста (можно на чистых console.assert или Vitest/Jest), демонстрирующих корректную работу батчинга и высчитывание computed.

Response not available

Drag to resize
Drag to resize
Drag to resize