问题描述:在使用 Angular 和 Firebase 进行开发时出现了一些问题,如何解决?
首先需要在项目中安装 Firebase 和 AngularFire2 模块,具体方式如下:
npm install firebase @angular/fire --save
之后在 app.module.ts 中引入 AngularFire2 模块,并在 imports 数组中添加 AngularFireModule 和 AngularFireAuthModule 模块:
import { AngularFireModule } from '@angular/fire'; import { AngularFireAuthModule } from '@angular/fire/auth'; import { environment } from '../environments/environment';
@NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule, AngularFireModule.initializeApp(environment.firebase), AngularFireAuthModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { }
其中,environment.firebase 是一个保存 Firebase 配置参数的对象,如:
export const environment = { production: false, firebase: { apiKey: "api-key", authDomain: "project-id.firebaseapp.com", databaseURL: "https://project-id.firebaseio.com", storageBucket: "project-id.appspot.com", messagingSenderId: "sender-id" } };
至此,就可以在 Angular 中使用 Firebase 了。
〔在 Firebase 控制台中创建并部署 Cloud Functions,具体步骤可参考 Firebase 官方文档。代码示例如下:
const functions = require('firebase-functions'); const admin = require('firebase-admin'); admin.initializeApp(functions.config().firebase);
exports.helloWorld = functions.https.onRequest((request, response) => { response.send("Hello from Firebase!"); });
〔首先需要在 Firebase 控制台中启用 Email/Password 验证方式,并在 app.module.ts 中添加 AngularFireAuth 模块,代码示例如下:
import { AngularFireAuth } from '@angular/fire/auth';
constructor(public afAuth: AngularFireAuth) { }
login(email: string, password: string) { this.af