ReactiveDot
Всё это написано с целью моего самообучения и детального знакомства с реактивным программированием и TS.
Пример проложения
Установка
npm install rdot
Пример использования
// Пример: a + bconst a = ; // создаем реактивную точку/контейнер/переменную (на самом делел простою функцию)const b = ;const sum = ; // реактивное выражение, зависящее от двух реактивных переменных // (1) Вычисляем результатconsole; // 3 // (2) Подписываемся на изменение суммыsum; // "sum: 3" // Изменяем `a`a; // "sum: 5" — т.е. сработает callback на `sum`,b; // "sum: 0" — да, схлопывания нет, оно не было целью
Как это можно использовать?
«Подсчет кликов»
+ -
{ // Счетчик + сеттер, который при получении нового значения, прибовляет к нему старое const counter = ; // Создаем «рективный поток» на основе события `click`: rdot; rdot; // Ещё один поток, который будет изменять свойство `value`: counter; // Эквивалентно записи: counter;}documentformscounter;
«Валидация формы»
Reg
{ // Создаем реактивную двухстороннюю связку с Input-элементом const username = rdot; const fullname = rdot; // Реактивное правило валидации const validate = ; // Связываем кол-во введенных символов и их вывод в соответствующем DOM-элементе username fullname; // Связываем правило валидации с состоянием кнопки validate;}documentformsreg;
Что дальше?
А дальше, гроб, гроб, кладбище... MIT.