angular / angular/angularfire

Timeout just in the first load with Angular 18 and SSR

未关闭
#3,551 10 条评论 3 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
TypeScript
星标
7.8k
派生
2.2k
平均合并
22 小时 28 分钟
30 天内合并 PR
6

描述

### Version info

**Angular:** 18.0.5

**Firebase:** latest

**AngularFire:** 18.0.1

### How to reproduce these conditions

Clone this minimal reproduction [repository](https://github.com/quedicesebas/lacomanda-front) containing just a boostraped project that use Firebase to get the SEO data for a page:

https://github.com/quedicesebas/lacomanda-front

**Sample data and security rules**

I'm just loading the SEO meta tags info form firebase.

You just need to use this two documents:

brandDomains/[lafocachera.co](http://lafocachera.co/)
{"brandId": "lafocachera"}

seoConfigs/lafocachera
{
"meta":
"card": "summary",
"description": "FOCACCIA Y PIZZA AL TAGLIO. Para llevar o DIRECTO A TU CASA",
"image": "https://lafocachera.co/assets/lafocachera/meta.jpg",
"type": "website",
"url": "https://lafocachera.co/"
},
"title "La Focachera - Domicilios MOSQUERA FUNZA Y MADRID"
}

### Debug output
I got this just the first time. If I press F5, reloads well each consequent time.
```
Page / did not render in 30 seconds.
at Timeout. (C:\Users\srrge\source\repos\esaes\alacarta\lacomanda-front\node_modules\@angular\build\src\utils\server-rendering\render-page.js:90:90)
at Timeout.timer (C:\Users\srrge\source\repos\esaes\alacarta\lacomanda-front\node_modules\zone.js\fesm2015\zone-node.js:2249:37)
at _ZoneDelegate.invokeTask (C:\Users\srrge\source\repos\esaes\alacarta\lacomanda-front\node_modules\zone.js\fesm2015\zone-node.js:398:33)
at _ZoneImpl.runTask (C:\Users\srrge\source\repos\esaes\alacarta\lacomanda-front\node_modules\zone.js\fesm2015\zone-node.js:158:47)
at invokeTask (C:\Users\srrge\source\repos\esaes\alacarta\lacomanda-front\node_modules\zone.js\fesm2015\zone-node.js:479:34)
at Timeout.ZoneTask.invoke (C:\Users\srrge\source\repos\esaes\alacarta\lacomanda-front\node_modules\zone.js\fesm2015\zone-node.js:468:48)
at Timeout.data.args. (C:\Users\srrge\source\repos\esaes\alacarta\lacomanda-front\node_modules\zone.js\fesm2015\zone-node.js:2231:32)
at listOnTimeout (node:internal/timers:573:17)
at process.processTimers (node:internal/timers:514:7
```

### Expected behavior

Should load the first-time without timeout

### Actual behavior

Timeout the first load (in local and deployed to Firebase App Hosting also)

贡献指南

打开贡献指南

调研方向

克隆链接的 lacomanda-front 最小复现,并使用列出的 Angular、Firebase 和 AngularFire 版本复现 `/` 的首次加载超时。先从 `@angular/build/src/utils/server-rendering/render-page.js` 中所示的 SSR 渲染路径开始,并将首次请求与重新加载进行比较。当初始页面加载在本地和 Firebase App Hosting 上都能在没有 30 秒超时的情况下完成渲染时,即视为完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
angular, firebase, typescript
领域
cloud, frontend
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。