app.functions 不是 Firebase Angular SDK 函数 HttpsCallable 中的函数

问题描述 投票:0回答:1

我在我的 Angular 项目中设置 Firebase 函数有点困难。

我正在尝试执行以下操作:

const callable = this.fns.httpsCallable('getLandingPageText');

console.log(callable);

callable(({ params }))
  .subscribe((result: any) => console.log(result));

所以结果是:

ERROR TypeError: app.functions is not a function
at angular-fire-compat-functions.js:32:29

我已经在app.module中初始化了我的firebaseApp,并且还导入了AngularFireFunctionsModule,就像你在这里看到的那样:

@NgModule({
  declarations: [AppComponent],
  imports: [
    BrowserModule,
    CommonModule,
    AngularFireModule.initializeApp(firebaseConfig),
    AngularFireAuthModule,
    AngularFireFunctionsModule,
    MainToolModule,
    AppRoutingModule,
  ],
  providers: [AuthService],
  bootstrap: [AppComponent],
})
export class AppModule {}

模块是从

@angular/fire/compat
导入的,使用 httpsCallable 的服务位于 MainToolModule 中。

到目前为止,我对 FireAuth / 数据库模块等其他模块没有任何问题(在工具模块本身中使用它)。

有人有想法吗?

编辑:

this.fns
来自服务中的构造函数:

constructor(private fns: AngularFireFunctions) {}

进口自

import { AngularFireFunctions } from '@angular/fire/compat/functions';
angular firebase google-cloud-functions angularfire2
1个回答
1
投票

我通过更新我的@angular/fire npm 包解决了这个问题。

对于 Angular 版本 16,您必须安装 @angular/fire 版本 16。

© www.soinside.com 2019 - 2024. All rights reserved.