Using with Angular 17 SSR -> document is not defined on initializeAppCheck
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 45/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- angular, firebase, typescript
Rechercherichtung
Beginne damit, docs/app-check.md zu lesen und den in @angular/fire/fesm2022/angular-fire.mjs gezeigten Aufruf von initializeAppCheck nachzuverfolgen, zusammen mit dem Dokumentzugriff im gemeldeten Firebase App Check-Stacktrace. Als erledigt gilt die Aufgabe, wenn Angular SSR und das Prerendering ohne einen Dokumentfehler abgeschlossen werden und App Check im Browser weiterhin initialisiert wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Version info
Angular:
17.0.8
Firebase:
10.7.1
AngularFire:
17.0.0
Other (e.g. Ionic/Cordova, Node, browser, operating system):
Node 18, Ionic 7, MacOS
How to reproduce these conditions
Steps to set up and reproduce
- New Angular 17 project
ng add @angular/fire@17ng add @angular/ssr- Set up App Check as per https://github.com/angular/angularfire/blob/master/docs/app-check.md
ng build
Debug output
⠇ Building...
ReferenceError: document is not defined
at makeDiv (/app/.angular/prerender-root/node_modules/@firebase/app-check/dist/esm/index.esm2017.js:1119:26)
at initializeV3 (/app/.angular/prerender-root/node_modules/@firebase/app-check/dist/esm/index.esm2017.js:1064:19)
at _ReCaptchaV3Provider.initialize (/app/.angular/prerender-root/node_modules/@firebase/app-check/dist/esm/index.esm2017.js:1255:9)
at _activate (/app/.angular/prerender-root/node_modules/@firebase/app-check/dist/esm/index.esm2017.js:1543:20)
at initializeAppCheck (/app/.angular/prerender-root/node_modules/@firebase/app-check/dist/esm/index.esm2017.js:1498:5)
at <anonymous> (app/.angular/prerender-root/c56c3be0-e454-4b23-bf7d-d028ecf276ec/node_modules/@angular/fire/fesm2022/angular-fire.mjs:216:44)
at <anonymous> (/app/.angular/prerender-root/c56c3be0-e454-4b23-bf7d-d028ecf276ec/node_modules/@angular/fire/fesm2022/angular-fire.mjs:148:57)
at _ZoneDelegate.invoke (/app/.angular/prerender-root/node_modules/zone.js/fesm2015/zone.js:368:26)
at _Zone.run (/app/.angular/prerender-root/node_modules/zone.js/fesm2015/zone.js:129:43)
at _NgZone.runOutsideAngular (/app/.angular/prerender-root/node_modules/@angular/core/fesm2022/core.mjs:1461
An unhandled exception occurred: document is not defined
Expected behavior
AngularFire should check if rendering on a browser before calling App Check code and RecaptchaV3 (which relies on document being available)
Actual behavior
No check is done, so when providing App Check, this above error occurs as soon as pre-rendering on the server happens and document is accessed but isn't available due to not running in a browser
- Vorherrschende Sprache
- TypeScript
- Sterne
- 7.8k
- Forks
- 2.2k
- Ø Merge
- 3 T. 6 Std.
- Gemergte PRs (30 T.)
- 5
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus angular/angularfire
-
comp: build/pipeline type: bug version: current (v17+)
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
angular/angularfire#3766 ·
-
comp: schematics type: bug version: current (v17+)
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 76/100
angular/angularfire#3768 ·
-
comp: docs type: chore version: current (v17+)
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 58/100
angular/angularfire#3764 ·
-
comp: firestore comp: ssr priority: P0 (critical) type: feature version: current (v17+)
angular/angularfire#3757 · 1 zugewiesene Person ·
-
Six `firebase` entry points have no `@angular/fire` equivalent, so their exports are unreachable Offencomp: core type: feature
angular/angularfire#3755 · 1 zugewiesene Person ·
Alle Issues in angular/angularfire
Ähnliche Issues
-
blocklist removal
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
MetaMask/eth-phishing-detect#296544 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
pastelsky/bundlephobia#1122 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
-
category/development priority/P2 scope/file-operations scope/testing type/enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
Enatega Customer and Rider app: Add-ons price is not visible to customer after order is placed. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100