function foo() { console.log("foo"); } function bar() { console.log("bar"); } function baz() { console.log("baz"); } function doSomething() { foo(); setTimeout(function() {}, 5000); } Zone.current.fork({ onHandleError: function(parentZoneDelegate, currentZone, targetZone, error) { console.log(error.stack); }, onScheduleTask: function(parentZoneDelegate, currentZone, targetZone, task) { console.log('onScheduleTask', task); parentZoneDelegate.scheduleTask(targetZone, task); }, onInvokeTask: function(parentZoneDelegate, currentZone, targetZone, task, applyThis, applyArgs) { console.log('onInvokeTask', task); parentZoneDelegate.invokeTask(targetZone, task, applyThis, applyArgs); } }).fork(Zone.longStackTraceZoneSpec).run(function() { $('#button1').click(function() { console.log('button clicked'); foo(); bar(); doSomething(); baz(); }); });
<button id='button1'>click</button>