Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何设置新firebase插入的id 从'@angular/core'导入{Injectable}; 从“angularfire2”导入{AngularFire,FirebaseListObservable}; /* 为FirebaseService提供程序生成的类。 看见https://angular.io/docs/ts/latest/guide/dependency-injection.html 有关提供者和Angular 2 DI的更多信息。 */ @可注射() 导出类FirebaseService{ 用户:FirebaseListObservable; 建造商(公共角火:角火){ log(“Hello FirebaseService Provider”); this.users=this.angularFire.database.list('users'); } 保存用户(用户){ this.users.push(用户); } }_Javascript_Firebase_Ionic2_Angularfire2 - Fatal编程技术网

Javascript 如何设置新firebase插入的id 从'@angular/core'导入{Injectable}; 从“angularfire2”导入{AngularFire,FirebaseListObservable}; /* 为FirebaseService提供程序生成的类。 看见https://angular.io/docs/ts/latest/guide/dependency-injection.html 有关提供者和Angular 2 DI的更多信息。 */ @可注射() 导出类FirebaseService{ 用户:FirebaseListObservable; 建造商(公共角火:角火){ log(“Hello FirebaseService Provider”); this.users=this.angularFire.database.list('users'); } 保存用户(用户){ this.users.push(用户); } }

Javascript 如何设置新firebase插入的id 从'@angular/core'导入{Injectable}; 从“angularfire2”导入{AngularFire,FirebaseListObservable}; /* 为FirebaseService提供程序生成的类。 看见https://angular.io/docs/ts/latest/guide/dependency-injection.html 有关提供者和Angular 2 DI的更多信息。 */ @可注射() 导出类FirebaseService{ 用户:FirebaseListObservable; 建造商(公共角火:角火){ log(“Hello FirebaseService Provider”); this.users=this.angularFire.database.list('users'); } 保存用户(用户){ this.users.push(用户); } },javascript,firebase,ionic2,angularfire2,Javascript,Firebase,Ionic2,Angularfire2,您好,在这段代码中,我试图在users表下的firebase表中添加新用户问题是我找不到set方法,我只能访问push,是不是我做错了? 感谢您的帮助请尝试以下示例: $add({foo:bar})。然后(…) 此示例取自AngularFire文档。AngularFire2不公开列表可观察对象的set。你应该改用 当您查看可观察的对象时,这有一定的意义,它确实公开了set。当对可观察对象调用set时,数据库对象的全部内容将替换为指定值 通常,您永远不想替换整个列表,因此不公开set是有意义的。而

您好,在这段代码中,我试图在users表下的firebase表中添加新用户问题是我找不到set方法,我只能访问push,是不是我做错了?
感谢您的帮助

请尝试以下示例:

$add({foo:bar})。然后(…)


此示例取自AngularFire文档。

AngularFire2不公开列表可观察对象的
set
。你应该改用

当您查看可观察的对象时,这有一定的意义,它确实公开了
set
。当对可观察对象调用
set
时,数据库对象的全部内容将替换为指定值

通常,您永远不想替换整个列表,因此不公开
set
是有意义的。而
update
是合适的,因为您正在更新列表,或者正在添加新用户

this.users.update(user.id/*或任何键*/,user);
或者,您可以使用list observable的SDK ref调用
set

this.users.$ref.ref.child(user.id/*或任何要作为键的内容*/).set(user);
import { Injectable } from '@angular/core';
import { AngularFire, FirebaseListObservable } from 'angularfire2';
/*
  Generated class for the FirebaseService provider.

  See https://angular.io/docs/ts/latest/guide/dependency-injection.html
  for more info on providers and Angular 2 DI.
*/
@Injectable()
export class FirebaseService {

  users:FirebaseListObservable<any>;

  constructor(public angularFire: AngularFire,) {
    console.log('Hello FirebaseService Provider');
    this.users=this.angularFire.database.list('users');
}

  saveuser(user){
    this.users.push(user);
  }

}