我创建了一个node.js应用来解析angular2
的HTML AST和Typescript AST,以便提取数据。
要执行此操作,我需要导入@angular/compiler
,然后导入@angular/core
,这需要peerDependency
zone.js@^0.6.21
。
问题是在加载时node.js应用程序似乎有点破坏了zone.js:
<my-project>/node_modules/zone.js/dist/zone.js:1286
var openNative = patchMethod(window.XMLHttpRequest.prototype, 'open', function () { return function (self, args) {
^
TypeError: Cannot read property 'prototype' of undefined
at patchXHR (<my-project>/node_modules/zone.js/dist/zone.js:1286:55)
at <my-project>/node_modules/zone.js/dist/zone.js:1253:1
at Zone.Zone.zoneSpec._properties (<my-project>/node_modules/zone.js/dist/zone.js:9:68)
at Object.<anonymous> (<my-project>/node_modules/zone.js/dist/zone.js:12:2)
at Module._compile (module.js:541:32)
at Object.Module._extensions..js (module.js:550:10)
at Module.load (module.js:458:32)
at tryModuleLoad (module.js:417:12)
at Function.Module._load (module.js:409:3)
at Module.require (module.js:468:17)
在我升级到angular2 final
之前,我使用的是angular 2.0.0-rc.1
,而且需要zone.js@ ^0.6.6
才能正常使用。
zone.js
,但不可能,因为它会破坏代码。zone.js@0.6.25
,仍然是完全相同的错误。答案 0 :(得分:0)
检查您是否导入zone-node
而不是zone
:
import 'zone.js/dist/zone-node';