AngularSSR错误:FIRESTORE:内部断言失败:意外的状态。
创始人
2024-10-29 16:30:19
0

通常,这个错误是由于尝试在NodeJS环境中使用浏览器特定的代码而导致的。一种解决方法是将你的代码修改为可以在NodeJS环境中运行,或者将其限制在浏览器环境中运行。另外,你还可以尝试更新所有相关的依赖项以确保它们与你的Angular版本兼容。以下是一个可能会导致这个错误的示例代码:

import {Injectable} from '@angular/core';
import {AngularFirestore} from '@angular/fire/firestore';

@Injectable()
export class MyService {
  constructor(private afs: AngularFirestore) {}

  async doSomething() {
    const doc = this.afs.doc('/my/path');
    const data = await doc.get().toPromise();
    // ...
  }
}

如果你在这里运行 doc.get() ,则会引发错误。在这种情况下,你需要使用 runOutsideAngular 方法来确保 doc.get() 在服务器上运行:

import {Injectable} from '@angular/core';
import {AngularFirestore} from '@angular/fire/firestore';
import {runOutsideAngular} from '@angular/core';

@Injectable()
export class MyService {
  constructor(private afs: AngularFirestore) {}

  async doSomething() {
    const doc = this.afs.doc('/my/path');
    const data = await runOutsideAngular(() => doc.get().toPromise());
    // ...
  }
}

相关内容

热门资讯

技术分享!博乐龙江填大坑攻略(... 技术分享!博乐龙江填大坑攻略(透明挂)总是存在有挂(2023已更新)(哔哩哔哩);1)博乐龙江填大坑...
wepower有外 挂!wep... wepower有外 挂!wepoke真的有挂嘛,wepoke辅助插件,我来教教你(有挂解说);人气非...
微扑克系统发牌规律!微扑克辅助... 自定义微扑克系统规律,只需要输入自己想要的开挂功能,一键便可以生成出微扑克专用辅助器,不管你是想分享...
必备科技!开心联盟棋牌俱乐部怎... 必备科技!开心联盟棋牌俱乐部怎么才能赢(辅助)好像是真的有挂(2022已更新)(哔哩哔哩)1、必备科...
wepoke插件!wepoke... wepoke插件!wepoke德州扑克系统规律,wepoke有挂,力荐教程(有挂细节)1、不需要AI...
微扑克德州专用辅助器!微扑克辅... 微扑克德州专用辅助器!微扑克辅助软件查得出来,微扑克有挂,细节方法(有挂方法)1、许多玩家不知道微扑...
最新技巧!衢州都莱辅助器是真是... 最新技巧!衢州都莱辅助器是真是假(透明挂)一贯存在有挂(2024已更新)(哔哩哔哩)1、衢州都莱辅助...
wepokeai代打!wepo... wepokeai代打!wepoke挂真的,wEpOke果真真的有挂,曝光教程(有挂攻略);wpk透视...
微扑克辅助挂!微扑克被系统制裁... 微扑克辅助挂!微扑克被系统制裁,WPK确实是有挂,教你攻略(有挂透视),您好,微扑克这款游戏可以开挂...
教程攻略!经典联盟有外 挂吗(... 教程攻略!经典联盟有外 挂吗(透明挂)确实是有挂(2026已更新)(哔哩哔哩);在进入经典联盟有外 ...