JSFiddle - React, Tailwind, and code Playground

by evgkch

JavaScript

const observe = (target, cb) => new Proxy(target, {
	set(target, key, prop){
  	target[key] = prop;
    cb(target);
  }
});

const obj = { a: 1, b: [1] };

const model = observe(obj, (target) => { console.log(target) });

model.a = 2;
model.b = [...model.b, 2];