Angular5 Universal在firebase托管和seo上的延迟加载

问题描述 投票:1回答:1

有谁知道如何在firebase托管工作上获得延迟加载?这一切都有效,但当我查看我的网站的源代码时,我只看到路由器插座而不是文本等等。我已将下面的代码添加到functions文件夹中的index.js中:

extraProviders: [
  provideModuleMap(LAZY_MODULE_MAP)
]

我的app.server.module文件如下所示:

import { NgModule } from '@angular/core';
import { ServerModule } from '@angular/platform-server';
import { AppModule } from './app.module';
import { AppComponent } from './app.component';

@NgModule({
imports: [
AppModule,
ServerModule
],
bootstrap: [AppComponent],
})
export class AppServerModule {}

但是当我在我的控制台中使用firebase部署时,它已成功部署。但是,当我在那之后访问我的网站时,我收到错误和空白页面。

所以如果有人能指出我正确的方向,那就太棒了!

angular lazy-loading angular5 firebase-hosting angular-universal
1个回答
-1
投票

可能是因为您在导入中缺少ModuleMapLoaderModule模块

app.server.module.ts

import {ModuleMapLoaderModule} from '@nguniversal/module-map-ngfactory-loader'

@NgModule({
imports: [
AppModule,
ServerModule,
ModuleMapLoaderModule
],

懒惰加载的路线似乎需要:

ModuleMapLoaderModule是一个服务器端模块,允许延迟加载路由。

https://angular.io/guide/universal#app-server-module

© www.soinside.com 2019 - 2024. All rights reserved.