我已经使用ng update --all
更新了我的angular.net核心项目。我遇到了很多错误和问题。但是,我在网上找到了解决方案。
但是,这是无法找到解决方案的最后一个错误。这是“ boot.server.ts”文件的代码:
import { Observable } from 'rxjs/Observable';
import { range } from 'rxjs';
import 'reflect-metadata';
import 'zone.js';
import { APP_BASE_HREF } from '@angular/common';
import { enableProdMode, ApplicationRef, NgZone, ValueProvider } from '@angular/core';
import { platformDynamicServer, PlatformState, INITIAL_CONFIG } from '@angular/platform-server';
import { createServerRenderer, RenderResult } from 'aspnet-prerendering';
import { AppModule } from './app/app.server.module';
import { forkJoin } from 'rxjs/observable/forkJoin';
import { first } from 'rxjs/operators';
import { pipe } from 'rxjs-compat';
enableProdMode();
export default createServerRenderer(params => {
const providers = [
{ provide: INITIAL_CONFIG, useValue: { document: '<app></app>', url: params.url } },
{ provide: APP_BASE_HREF, useValue: params.baseUrl },
{ provide: 'BASE_URL', useValue: params.origin + params.baseUrl },
];
return platformDynamicServer(providers).bootstrapModule(AppModule).then(moduleRef => {
const appRef: ApplicationRef = moduleRef.injector.get(ApplicationRef);
const state = moduleRef.injector.get(PlatformState);
const zone = moduleRef.injector.get(NgZone);
return new Promise<RenderResult>((resolve, reject) => {
zone.onError.subscribe((errorInfo: any) => reject(errorInfo));
appRef.isStable.first(isStable => isStable).subscribe(() => {
// Because 'onStable' fires before 'onError', we have to delay slightly before
// completing the request in case there's an error to report
setImmediate(() => {
resolve({
html: state.renderToString()
});
moduleRef.destroy();
});
});
});
});
});
我还在线找到了一种解决方案,例如使用如下管道功能:</ p>
appRef.isStable.pipe(first(isStable => isStable))
但是我仍然没有得到解决方案。我收到类似
的错误“可观察”类型上不存在属性“管道”。
我还尝试安装“ rxjs-compat
”。
但仍然无法正常工作。仍然出现错误。