0
ユーザー認証後にfirebaseにユーザー入力を送信しようとしています.IonicFrameworkを使用しています。これは私が試みたものです。認証後にfirebaseにユーザー入力を送信できません
エラーが未知(約束しています):エラー:Reference.childが失敗しました:最初の引数は無効なパス= 'profile/$ {auth.uid}'でした。
typescriptファイル:
import { Component,ViewChild } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import {AngularFireAuth} from 'angularfire2/auth';
import {AngularFireDatabase} from 'angularfire2/database';
import { TabsPage } from '../tabs/tabs';
/**
* Generated class for the FpPage page.
*
* See https://ionicframework.com/docs/components/#navigation for more info on
* Ionic pages and navigation.
*/
@IonicPage()
@Component({
selector: 'page-fp',
templateUrl: 'fp.html',
})
export class FpPage {
@ViewChild('uname') uname;
constructor(private fire:AngularFireAuth,private db :AngularFireDatabase,public navCtrl: NavController, public navParams: NavParams) {
}
createProfile(){
this.fire.authState.take(1).subscribe(auth => {
this.db.list('profile/${auth.uid}').push(this.uname)
.then(() => this.navCtrl.push('TabsPage'))
})
}
ionViewDidLoad() {
console.log('ionViewDidLoad FpPage');
}
}
HTML:
<ion-content padding>
<ion-item>
<ion-label floating>Username</ion-label>
<ion-input type="username" #uname></ion-input>
</ion-item>
<button ion-button clear block (click)="createProfile()">Set Username</button>
</ion-content>
感謝を見て私はエラーが修正されたと思うが、私は今もう一つ持っていた:/ Error:Reference.push f ailed:最初の引数にはプロパティの関数が含まれています – rektandlove
@rektandlove私はあなたのプロジェクトにアクセスすることができないので、私はそれをデバッグすることはできません。エラーは 'this.uname'がオブジェクトフィールドとしての機能を持っていると言います。それは@ViewChildデコレータが確実にやっていることです。コレクションに保存するプロパティを持つオブジェクトを作成します。 '... push({name:this.uname.name、otherField:this.uname.otherField})... ' –
ngmodelを使用していただきありがとうございますhtmlの – rektandlove