по списку реактивных выражений. Поэтому от очередности зависит количество вызовов.
Вот как сделать что-то вроде
$$: {
$: сантиметров = дюймов * 2.54
$: дюймов = сантиметров / 2.54
}
гораздо интереснее.
Алгоритм простой
- каждая реактивная переменная в блоке имеет счетчик вызовов реактивности,
- при вызове реактивности по переменной в блоке:
1 Счетчики всех переменных с реактивностью внутри блока устанавливаются в 1
2 срабатывает реактивность на переменную, инициализировавшую реактивность.
3 ее счетчик устанавливается в 0
4 отрабатывается следующая реактивность по изменению первой переменной
5 ее счетчик также устанавливается в 0
6 гоуту 4 пока пока есть переменные у которых счетчик >0
ещё защита от зацикливания нужна
Так я и описал защиту от зацикливания.
Обсуждают сегодня