Angular Fire & Firebase 模拟器 - 文档更新不起作用
Angular Fire & Firebase Emulators - Update of document not working
将 Angular Fire 和 Firebase 模拟器更新到最新版本后,无法再更新文档。仍然可以毫无问题地创建新文档,但是 .update() 和 set() 不起作用。
我们的 Angular 应用程序有不同的环境。在本地环境(普通 ng 服务)中,应用程序应使用 Firebase Emulator Suite。如前所述,可以毫无问题地读取和创建文档。
app.module.ts(提供商)中的输出配置如下所示:`
// 火力地堡
AngularFireModule.initializeApp(environment.firebaseConfig),
AngularFireStorageModule,
// Translation
HttpClientModule,
TranslocoRootModule,
],
bootstrap: [AppComponent],
providers: [
{
provide: FIRESTORE_EMULATOR,
useValue: !environment.emulator ? undefined : ['localhost', 8080],
},
{
provide: FUNCTIONS_EMULATOR,
useValue: !environment.emulator ? undefined : ['localhost', 5001],
},
AuthGuard,
NavigationService,
],
})
导出 class AppModule {}`
在开发者控制台中,您可以看到向本地主机发出了写入请求,但它一直处于等待状态,并在 45 秒后被取消。
我们什么都试过了,但我们现在不知道该怎么办了。请帮助!谢谢!
我能够通过将 firebase
降级到 firebase@7.12.0
来解决同样的问题:
npm i firebase@7.12.0
在app.module.ts
中我添加了:
import { SETTINGS } from '@angular/fire/firestore';
在您需要初始化的导入中AngularFireModule
// Firebase
AngularFireModule.initializeApp(environment.firebaseConfig),
并在提供商中:
providers: [
...
{
provide: SETTINGS,
useValue: !environment.emulator
? undefined
: { host: "localhost:8080", ssl: false },
},
确保在本地开发环境文件中设置模拟器 (true
) 属性(在我的例子中:environment.emulator
)。我的 firebase 模拟器在端口 8080
.
上运行
您也可以尝试删除模拟器缓存(包含 .jar
文件),因为如果您启动它们,它们将自动下载。
将 Angular Fire 和 Firebase 模拟器更新到最新版本后,无法再更新文档。仍然可以毫无问题地创建新文档,但是 .update() 和 set() 不起作用。
我们的 Angular 应用程序有不同的环境。在本地环境(普通 ng 服务)中,应用程序应使用 Firebase Emulator Suite。如前所述,可以毫无问题地读取和创建文档。
app.module.ts(提供商)中的输出配置如下所示:`
// 火力地堡
AngularFireModule.initializeApp(environment.firebaseConfig),
AngularFireStorageModule,
// Translation
HttpClientModule,
TranslocoRootModule,
],
bootstrap: [AppComponent],
providers: [
{
provide: FIRESTORE_EMULATOR,
useValue: !environment.emulator ? undefined : ['localhost', 8080],
},
{
provide: FUNCTIONS_EMULATOR,
useValue: !environment.emulator ? undefined : ['localhost', 5001],
},
AuthGuard,
NavigationService,
],
}) 导出 class AppModule {}`
在开发者控制台中,您可以看到向本地主机发出了写入请求,但它一直处于等待状态,并在 45 秒后被取消。
我们什么都试过了,但我们现在不知道该怎么办了。请帮助!谢谢!
我能够通过将 firebase
降级到 firebase@7.12.0
来解决同样的问题:
npm i firebase@7.12.0
在app.module.ts
中我添加了:
import { SETTINGS } from '@angular/fire/firestore';
在您需要初始化的导入中AngularFireModule
// Firebase
AngularFireModule.initializeApp(environment.firebaseConfig),
并在提供商中:
providers: [
...
{
provide: SETTINGS,
useValue: !environment.emulator
? undefined
: { host: "localhost:8080", ssl: false },
},
确保在本地开发环境文件中设置模拟器 (true
) 属性(在我的例子中:environment.emulator
)。我的 firebase 模拟器在端口 8080
.
您也可以尝试删除模拟器缓存(包含 .jar
文件),因为如果您启动它们,它们将自动下载。