在节点内使用zone.js(非角度)

时间:2017-08-19 18:25:59

标签: javascript node.js angular zone.js

我想在我的节点应用中使用zone.js.

虽然我找到了一个post,其中描述了如何执行此操作,但我仍然得到zone未定义错误

例如。我还发现了一个例子,这个

let zone = require('zone');

zone.run(function () {
    zone.inTheZone = true;

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

哪个给出了同样的错误,但是我检查了zone对象,我注意到它返回了一个像这样的对象

{
    enable: function() { .. }
}

所以我猜区域API发生了变化。任何帮助将不胜感激

1 个答案:

答案 0 :(得分:1)

有两件事:

  1. 需要zone.js而不是zone
  2. 使用Zone.current来引用当前区域
  3. 这有效:

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