You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular SSR集成Firebase Storage报错:Service storage is not available

解决Angular SSR中Firebase Storage初始化报错问题

问题原因

Firebase Storage的Web SDK依赖浏览器专属API(如File、Blob),在Angular SSR的服务端(Node.js)环境下无法正常初始化,直接全局配置provideStorage会触发Service storage is not available initializing the app错误。

解决方案

通过区分客户端/服务端环境,仅在浏览器环境下初始化Firebase Storage,服务端返回空对象避免报错:

  1. 导入平台判断工具:
import { isPlatformBrowser } from '@angular/common';
import { PLATFORM_ID } from '@angular/core';
  1. 修改provideStorage配置:
provideStorage(() => {
  const platformId = inject(PLATFORM_ID);
  if (isPlatformBrowser(platformId)) {
    return getStorage(inject(FirebaseApp));
  }
  // 服务端返回空对象适配SSR环境
  return {} as any;
}),

额外检查项

  • 修正firebaseConfig语法错误:你提供的配置中locationId字段缺少闭合引号,需改为locationId: ""。
  • 确认依赖版本匹配:@angular/fire@18.0.1需搭配firebase@10.x+,可执行npm install firebase确保依赖安装完整。

内容的提问来源于stack exchange,提问作者João 0987

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 02:13:26