首页 > 解决方案 > Angular 6 神秘的堆栈跟踪:globalZoneAwareCallback

问题描述

最近,使用 Angular6,我开始在浏览器控制台中观察到描述性极差的堆栈跟踪:

ERROR 错误:“[object Object]”
resolvePromise
http://localhost:8080/polyfills.js:3136:31 resolvePromise
http://localhost:8080/polyfills.js:3093:17 scheduleResolveOrReject
http://localhost:8080/ polyfills.js :3195:17 invokeTask
http://localhost:8080/polyfills.js:2743:17 onInvokeTask
http://localhost:8080/vendor.js:36899:24 invokeTask
http://localhost:8080/polyfills。 js:2742:17 runTask
http://localhost:8080/polyfills.js:2510:28 drainMicroTaskQueue
http://localhost:8080/polyfills.js:2917:25 invokeTask
http://localhost:8080/polyfills.js: 2822:21调用任务
http://localhost:8080/polyfills.js:3862:9 globalZoneAwareCallback
http://localhost:8080/polyfills.js:3888:17 core.js:1673
defaultErrorLogger
core.js:1673
./node_modules/@angular/core /fesm5/core.js
/ErrorHandler.prototype.handleError
core.js:1719
next
core.js:4319:109
./node_modules/@angular/core/fesm5/core.js
/EventEmitter.prototype.subscribe/schedulerFn<
core. js:3555:34
./node_modules/rxjs/_esm5/internal/Subscriber.js
/SafeSubscriber.prototype.__tryOrUnsub
Subscriber.js:195
./node_modules/rxjs/_esm5/internal/Subscriber.js
/SafeSubscriber.prototype.next
Subscriber.js:133
./node_modules/rxjs/_esm5/internal/Subscriber.js
/Subscriber.prototype._next
Subscriber.js:77
./node_modules/rxjs/_esm5/internal/Subscriber.js
/Subscriber.prototype.next
订阅者。 js:54
./node_modules/rxjs/_esm5/internal/Subject.js/Subject.prototype.next
Subject.js:47
./node_modules/@angular/core/fesm5/core.js/EventEmitter.prototype.emit
core.js :3539:52
onHandleError/<
core.js:3846:48
./node_modules/zone.js/dist/zone.js/zone.js:388
./node_modules/zone.js/dist/zone.js/zone.js :138
./node_modules/@angular/core/fesm5/core.js
/NgZone.prototype.runOutsideAngular
core.js:3783
onHandleError
core.js:3846
./node_modules/zone.js/dist/zone.js
/ zone.js:392
./node_modules/zone.js/dist/zone.js/ zone.js:154
_loop_1
zone.js:677
./node_modules/zone.js/dist/zone.js/ zone.js:686
drainMicroTaskQueue
zone.js:602
./node_modules/zone.js/dist/zone.js/ zone.js:500
invokeTask
zone.js:1540
globalZoneAwareCallback
zone.js:1566

我怀疑路由模块中有一些错误,所以我粘贴了我的配置:

const routes = [
  {
    path: 'wordspreview/:id',
    component: WordsPreviewComponent
  },
  {
    path: 'wordspreview',
    component: WordsPreviewComponent
  },
  {
    path: 'search/:query',
    component: SearchResultsComponent
  },
  {
    path: '',
    redirectTo: '/wordspreview',
    pathMatch: 'full'
  }
};

希望有人能帮忙。

标签: javascriptangular6angular-router

解决方案


我只是为自己找到了这个错误。

无法在其他任何地方搜索它,我将在此处留下解决方案以帮助下一个潜在受害者:

constructor(private router : Router,
[...]
this.router.navigate([site, id]);

我做错的是导航到 wrong site。调试起来很困难,因为它只出现在一些罕见的错误site值上。


推荐阅读