JSFiddle - React, Tailwind, and code Playground

by Josh Pullen

JavaScript

let calledSignals = [];

function createSignal(initialValue) {
	let signal = {
  	value: initialValue,
  	get() {
    
    },
    set(newValue) {
    	calledSignals.push(signal);
    },
  };

	return [signal.get, signal.set];
}

function reactive(callback) {
	calledSignals = [];
  callback();
  
}

const [value, setValue] = createSignal(0);

setInterval(() => {
	setValue(value() + 1);
}, 500);

reactive(() => {
	console.log(value());
});