0.1.1 • Published 8 months ago

dignals v0.1.1

Weekly downloads
-
License
-
Repository
-
Last release
8 months ago

image

Dignals - это библиотека, которая позволяет создавать реактивные модели данных. Реактивность означает автоматическое обновление данных в зависимости от изменения их состояния.

Установка

Для установки выполните следующие команды:

npm install dignals

Использование

import { sig, effect, memo, batch } from 'dignals';

// Создание реактивных переменных (сигналов)
const count = sig(0);
const doubleCount = memo(() => count.get() * 2);

// Создание эффекта для слежения за изменениями в реактивных переменных
effect(() => {
  console.log('Count:', count.get());
  console.log('Double Count:', doubleCount.get());
});

// Изменение значения и автоматическое обновление эффекта
batch(() => {
  count.set(2);
  count.set(3);
});

Описание API

sig

Функция sig используется для создания реактивных переменных (сигналов).

const count = sig(0);

effect

Функция effect используется для создания эффектов. Эффекты представляют собой код, который автоматически выполняется при изменении реактивных переменных, от которых он зависит.

effect(() => {
  console.log('Count:', count.get());
});

memo

Функция memo используется для создания мемоизированных значений. Мемоизация позволяет кэшировать результат вычислений и пересчитывать его только в случае изменения зависимостей.

const doubleCount = memo(() => count.get() * 2);

Заметки по использованию

  • Запрещено изменять реактивные переменные или вызывать функции с побочными эффектами внутри мемоизированной функции.
  • Будьте осторожны с циклическими зависимостями в мемоизированных значениях, так как это может привести к бесконечному циклу и переполнению стека вызовов.

batch

Функция batch используется для группировки изменений реактивных переменных в одну пакетную операцию. Данная функция позволяет эффективно обновлять значения реактивных переменных и минимизировать количество перерасчетов.

batch(() => {
  count.set(2);
  count.set(3);
});

Очистка ресурсов

При создании эффектов вы можете указать функцию очистки, которая будет вызываться при удалении эффекта. Это позволяет освободить ресурсы, занятые эффектом, и выполнить другие необходимые операции при его удалении.

effect(() => {
  // Следите за изменениями реактивных переменных

  return () => {
    // Выполните очистку ресурсов при удалении эффекта
  };
});

Заключение

Dignals предоставляет удобный способ работы с реактивными данными в вашем приложении. Она позволяет легко отслеживать изменения данных и автоматически обновлять соответствующие эффекты. Используйте реактивную библиотеку, чтобы упростить разработку и повысить производительность вашего приложения.

0.1.0

8 months ago

0.1.1

8 months ago

0.0.8

1 year ago

0.0.7

1 year ago

0.0.6

1 year ago

0.0.5

1 year ago

0.0.4

1 year ago

0.0.3

1 year ago

0.0.2

1 year ago

0.0.1

1 year ago