Uses ES6 Proxy to instrument JS in an (unfortunately too verbose) aspect-oriented way
Install
$ npm install --save javascript-proxy-aop
Usage
const javascriptProxyAop = ; // pubSub may be any object that supports triggerconst instrument = ; const obj = ; objmethod'hello' 'world';// => pubSub.on('onBeforeMethod', method, args) is called// => method: 'anonymous<method>'// => args: [['hello', 'world']]// => pubSub.on('onAfterMethod', method, args) is called// => method: 'anonymous<method>'// => args: [['hello', 'world']]// => result: undefined obj; // method is 'fooBar'
TODO
- enable to instrument functions directly
License
MIT © Daniel Schmidt