如何在 Angularfire2 - Firebase3 中设置单个对象

How to set single objects in Angularfire2 - Firebase3

由于 Angularfire2 的文档非常糟糕,我真的不知道如何在 Angularfire2 中设置单个对象。 我的数据库结构很简单:

{
  "mode" : 0
}

"mode"是一个整数值。

之前,我使用的是纯 Javascript 和 Firebase 的 Web 版本,但现在想从混合 Ionic 应用程序开始。 到处都是关于 database.list 的示例和教程,但我不想使用列表,而只想设置或更新 "mode" 值。

[列表工作得很好。一般设置没有问题。]

我的代码结构:

import { Component } from '@angular/core';

import { NavController } from 'ionic-angular';

import {AngularFire, FirebaseListObservable} from 'angularfire2';

@Component({
  selector: 'page-home',
  templateUrl: 'home.html'
})
export class HomePage {

  constructor(public navCtrl: NavController, af: AngularFire) {

  }
}

那么对于 "mode" 的简单 .set 代码是什么,例如整数 2?

一个答案真的很有帮助,我只需要掌握一般的 AngularFire 系统..

谢谢!


小问题:

如果我想通过事件调用 html 中的函数。示例按钮->

(click)="setMode(0)"

我应该把实际函数放在相关打字稿代码中的什么地方? 构造函数、组件、之后?

你可以如图所示below.Hope下面的代码是不言自明的。

        export class YourPage {

          // Ref
          mode: FirebaseObjectObservable<any>;

          constructor(public navCtrl: NavController, public af: AngularFire) {

            this.mode = this.af.database.object('/mode');//ref

          }

       setValue(data: any) {
        this.mode.set(data);//set
       }

      updateValue(data: any) {
        this.mode.update(data);//update
      }

     //This is the answer for your 2nd question
     setMode(data):void{
       //method body
     }
 }