【发布时间】:2018-03-16 04:04:32
【问题描述】:
我正在尝试使用 IntervalObservable 在 Angular 4 组件的 OnInit 内启动重复的客户端操作。该应用程序使用 ASP.NET Core。
执行可观察订阅。但是,Microsoft.AspNetCore.NodeServices 中的服务器端预呈现似乎正在执行订阅——从不将呈现的页面返回给浏览器。
我在这里做错了什么?以下是重现的步骤。在这个示例中,我只是尝试在浏览器中console.log 发送心跳。
重现步骤
- 创建并
cd进入一个新目录。 - 运行
dotnet new angular。 - 运行
npm install。 - 将
ClientApp/app/components/home/home.component.ts的内容替换为下面的代码sn-p。 - 运行
dotnet run并转到http://localhost:5000。
import { Component, OnInit } from '@angular/core';
import { IntervalObservable } from "rxjs/observable/IntervalObservable";
@Component({
selector: 'home',
templateUrl: './home.component.html'
})
export class HomeComponent implements OnInit {
ngOnInit(): void {
IntervalObservable.create(1500).subscribe((iteration:number)=>console.log(iteration));
}
}
当请求进来时,调试控制台开始报告iteration,如代码sn-p所示。页面渲染器超时并最终返回错误页面,但IntervalObservable 订阅继续在调试控制台中迭代。
【问题讨论】:
标签: angular typescript asp.net-core rxjs