@slikts/deepproxy
v1.0.2
Published
Recursive ES2015 Proxy
Downloads
3
Maintainers
Readme
Deep Proxy
A tiny library to recursively wrap an object and all its sub-objects with ES2015 Proxy
.
Installation
npm install --save @slikts/deepproxy
Usage
import { deepProxy } from "@slikts/deepproxy"
const a = deepProxy({ b: { c: 1 } }, {
get(target, key) {
return target[key] ? target[key] : 123;
}
});
a.b; // -> { c: 1 }
a.foo; // -> 123
a.b.c; // -> 1
a.b.foo; // -> 123
How it Works
The target object is wrapped with an additional Proxy
that traps property access and also wraps any values of object type. The created proxies are memoized to avoid re-creating them for the same target and handler.
License
MIT
Author
slikts [email protected]