要在Angular应用中使用Firebase获取多个变量,需要使用Firebase的Angular库(@angular/fire)和Angular的RxJS库(rxjs)来实现。
以下是一个示例代码,展示了如何使用Angular和Firebase获取多个变量:
npm install firebase @angular/fire rxjs --save
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AngularFireModule } from '@angular/fire';
import { AngularFireDatabaseModule } from '@angular/fire/database';
import { environment } from '../environments/environment';
@NgModule({
imports: [
BrowserModule,
AngularFireModule.initializeApp(environment.firebaseConfig),
AngularFireDatabaseModule
],
declarations: [],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
import { Component, OnInit } from '@angular/core';
import { AngularFireDatabase } from '@angular/fire/database';
import { combineLatest } from 'rxjs';
@Component({
selector: 'app-example',
templateUrl: './example.component.html',
styleUrls: ['./example.component.css']
})
export class ExampleComponent implements OnInit {
variable1: any;
variable2: any;
constructor(private db: AngularFireDatabase) { }
ngOnInit() {
// 使用combineLatest操作符来同时订阅多个Firebase变量
combineLatest([
this.db.object('path/to/variable1').valueChanges(),
this.db.object('path/to/variable2').valueChanges()
]).subscribe(([variable1, variable2]) => {
this.variable1 = variable1;
this.variable2 = variable2;
});
}
}
Variable 1: {{ variable1 }}
Variable 2: {{ variable2 }}
请替换上面示例代码中的路径('path/to/variable1'和'path/to/variable2')为实际的Firebase数据库路径。
这样,当Firebase中的变量发生变化时,Angular应用中的变量也会自动更新。