Javascript 从Angular 4向Firebase发布数据

Javascript 从Angular 4向Firebase发布数据,javascript,angular,firebase,firebase-realtime-database,Javascript,Angular,Firebase,Firebase Realtime Database,我使用Angular4和AngularFire将数据发送到Firebase 我需要得到一些数据,如:姓名,国家,邮政编码与电子邮件和密码 更新后:// HTML表单: <form #formData='ngForm' (ngSubmit)="onSubmit(formData)"> <input type="text" placeholder="Name" (ngModel)="name" name="name" class="txt" required> <i

我使用Angular4和AngularFire将数据发送到Firebase

我需要得到一些数据,如:姓名,国家,邮政编码与电子邮件和密码

更新后://

HTML表单:

<form #formData='ngForm' (ngSubmit)="onSubmit(formData)">
 <input type="text" placeholder="Name" (ngModel)="name" name="name" class="txt" required>
 <input type="text" placeholder="Country" (ngModel)="country" name="country" class="txt" required>
 <input type="text" placeholder="code" (ngModel)="code" name="code" class="txt" required>
 <input type="text" placeholder="Email addres" (ngModel)="email" name="email" class="txt" required>
 <input type="password" placeholder="Password" (ngModel)="password" name="password" class="txt" required>
 <button type="submit" [disabled]="!formData.valid" class="basic-btn">Create Account</button>
</form>
我得到的错误是: 数据库没有auth,FireAuth也没有
createUser

this.db.auth.createUser

此时没有
uid
属性


this.db.object('/users/'+state.uid).set({code:formData.value.code})

无法在Firebase的auth部分保存额外数据。您可以使用和身份验证部分相同的uid将所有额外信息保存在“用户”下的数据库中

constructor(private db: AngularFireDatabase) {}

onSubmit(formData) {
 if(formData.valid) {
  console.log(formData.value);
  this.af.auth.createUser({
    email: formData.value.email,
    password: formData.value.password
  }).then (
    (state: FirebaseAuthState) => {
      db.object('/users/' + state.uid).set({zip: formData.value.zip});
      this.router.navigate(['/login'])
    }).catch(
      (err) => {
        console.log(err);
        this.error = err;
      })
   }
}

无法在Firebase的auth部分保存额外数据。您可以使用和身份验证部分相同的uid将所有额外信息保存在“用户”下的数据库中

constructor(private db: AngularFireDatabase) {}

onSubmit(formData) {
 if(formData.valid) {
  console.log(formData.value);
  this.af.auth.createUser({
    email: formData.value.email,
    password: formData.value.password
  }).then (
    (state: FirebaseAuthState) => {
      db.object('/users/' + state.uid).set({zip: formData.value.zip});
      this.router.navigate(['/login'])
    }).catch(
      (err) => {
        console.log(err);
        this.error = err;
      })
   }
}

我得到:静态解析符号值时遇到错误。调用函数“OpaqueToken”,不支持函数调用。考虑引用一个导出函数替换函数或lambda,解析E//DEV/Projy/ZMOTYWOWANCHI/NoDEYMys/ANGAREFIL2/ToKSEN.D.TS中的符号FixBaseCurfIg,在E:/DEV/Proj/ZMOTYWOWAYCHN/NoDEYMease/angalFiel2/angalFiel2.DTS中解析符号角FieldMask.IngalIZEApp。解析E:/DEV/project/./app.module.ts中的符号AppModule,解析E:/DEV/project/./app.module.ts中的符号AppModule您的AngularFire版本是什么?“angularfire2”:“^2.0.0-beta.7-pre”,尝试使用“2.0.0-beta.8”这是一个已知的AngularFire问题。尝试重新安装firebase库
npm卸载firebase angularfire2--保存npm安装firebase angularfire2--保存
。问题在于:我得到:静态解析符号值时遇到错误。调用函数“OpaqueToken”,不支持函数调用。考虑引用一个导出函数替换函数或lambda,解析E//DEV/Projy/ZMOTYWOWANCHI/NoDEYMys/ANGAREFIL2/ToKSEN.D.TS中的符号FixBaseCurfIg,在E:/DEV/Proj/ZMOTYWOWAYCHN/NoDEYMease/angalFiel2/angalFiel2.DTS中解析符号角FieldMask.IngalIZEApp。解析E:/DEV/project/./app.module.ts中的符号AppModule,解析E:/DEV/project/./app.module.ts中的符号AppModule您的AngularFire版本是什么?“angularfire2”:“^2.0.0-beta.7-pre”,尝试使用“2.0.0-beta.8”这是一个已知的AngularFire问题。尝试重新安装firebase库
npm卸载firebase angularfire2--保存npm安装firebase angularfire2--保存
。问题在于: