A responsive system implemented in python with reference to the core mechanisms of S.js and vue reactivity.
pip install signefrom signe import signal, effect, computed
num = signal(1)
@computed
def plus1():
return num.value + 1
@effect
def _():
print('plus1 is :',plus1.value)
# should print `plus1 is :2`
num.value=10
# should print `plus1 is :11`
signalCreates a signal. Reads and writes via.value.computedCreates a computed expression. The argument is a function. When a signal (signal.value) is used in the function to get a value, this calculation expression is automatically associated with the signal. When the value of the signal changes, the computed expression is automatically triggered to change.effectis essentially the same ascomputed. A change in the signal orcomputedexpression is automatically captured and triggered.