【发布时间】:2017-12-07 00:09:46
【问题描述】:
我有一个很奇怪的问题。以下代码产生无限循环的调用。可能仅在服务器端渲染期间,但我不确定。
import { Component, AfterViewChecked } from '@angular/core';
@Component({
selector: 'test',
template: '<div>nothing...</div>'
})
export class TestComponent implements AfterViewChecked {
ngAfterViewChecked(): void {
console.log('wtf');
}
}
确切的错误信息如下:
处理请求时发生未处理的异常。
NodeInvocationException:节点调用在 60000 毫秒后超时。 您可以通过设置 NodeServicesOptions 上的 InvocationTimeoutMilliseconds 属性。
第一个调试步骤是确保您的 Node.js 功能 总是调用提供的回调(或抛出异常 同步),即使遇到错误。否则,.NET 代码无法知道它是完成还是失败。
Microsoft.AspNetCore.NodeServices.HostingModels.OutOfProcessNodeInstance+d__13.MoveNext()
有趣的是,在没有实现 ngAfterViewChecked 的情况下编译 ASP .Net Core 项目,然后实现它并用 HMR 注入它不会导致错误。这就是为什么我认为错误可能只发生在服务器端渲染步骤期间?
【问题讨论】:
-
这似乎正是我正在寻找的,但他们通过以下方式结束了这个问题:“在区域 PR 清理时已修复。” - 这是什么意思?
标签: angular asp.net-core