【发布时间】:2018-08-08 21:17:23
【问题描述】:
有人知道如何在 firebase 主机上进行延迟加载吗? 一切正常,但是当我查看我网站的源代码时,我只看到路由器插座而不是文本等。我已将以下代码添加到函数文件夹内的 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 deploy 时,它已成功部署。但是,当我在那之后访问我的网站时,我收到一个错误和一个空白页面。
所以如果有人能指出我正确的方向,那就太棒了!
【问题讨论】:
-
嗨。你找到解决方案了吗?我正在努力解决同样的问题。
-
嗨菲尔。我目前切换到 rendertron。很酷的一点是您根本不需要服务器端渲染。看看这个:github.com/GoogleChrome/rendertron
-
感谢您的建议。请问您是否对 Rendertron 中延迟加载的 Angular-Modules 有任何问题?
-
您好 Phil,Rendertron 对延迟加载的模块没有任何问题。我相信只要您的页面加载时间不到 10 秒。
-
听起来很棒,谢谢。实际上,我现在已经在研究 Rendertron。您是否使用此github.com/AngularFirebase/E66-Angular-SEO-Rendertron 作为参考?你知道为什么这个项目使用原生服务工作者而不是来自 Angular 框架的代理/适配器吗?
标签: angular lazy-loading angular5 firebase-hosting angular-universal