1.0.0 • Published 6 years ago
recursive-object-proxy v1.0.0
recursive-object-proxy
Like ES6 proxies but deeper. Will notify you whenever a property of an object is updated, no matter how nested it is.
npm i recursive-object-proxy
const proxyObject = require('recursive-object-proxy');
const o = {
a: [
1, 2, 3, 4, [ 5, 6, 7]
],
b: {
c: { d: [1, 2, 3], e: 5 }
}
};
const obj = proxyObject(o, (path, val, isRemoved) => {
console.log('proxy notification: ');
if (isRemoved) {
console.log(`removed ${path}`);
} else {
console.log(`${path} =`, val);
}
});
obj.a[3] = { bb: 22, cc: 44 };
// console output: proxy notification: a[3] = { bb: 22, cc: 44 }
See example.js
for more examples.
Extra
More about proxies: http://exploringjs.com/es6/ch_proxies.html
Similar projects: