JavaScript 的 Zone 实现:Zone.js

jopen 9年前

Zone.js 在 JavaScript 中实现了 Zones 的概念,其灵感来自于 Dart。

Zone 是执行过程的上下文,可以在异步任务之间进行持久性传递,你可以把它当成是类似 Java 的 TLS 线程本地存储技术,只不过是用在 JavaScript 语言中。

示例代码:

zone.run(function () {    zone.inTheZone = true;      setTimeout(function () {      console.log('in the zone: ' + !!zone.inTheZone);    }, 0);  });    console.log('in the zone: ' + !!zone.inTheZone);

fork:

zone.fork({    beforeTask: function () {      console.log('hi');    }  }).run(function () {    // do stuff  });

项目主页:http://www.open-open.com/lib/view/home/1419478402843