我的app.component.ts如下
import { Component } from '@angular/core';
import { AngularFireDatabase, FirebaseListObservable, FirebaseObjectObservable } from 'angularfire2/database';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
list: FirebaseListObservable<any[]>;
// listing: FirebaseObjectObservable<any[]>;
constructor(private af:AngularFireDatabase) {
this.list=this.af.list('/listings');
// this.addTask();
}
addTask(){
this.list.push({
name: 'Aswin',
city:'kochi',
bedrooms:'rarish@gmail.com',
image:'9562096886',
path:'10',
price:'java',
title:'3',
type:'adipoli aanu'
});
}
}
我的观看页面就像这样
<input type="submit" (click)="addTask()"/>
现在,当点击提交按钮时,它会将值推送到angular2 firebase数据库。但是键名是随机的,如KmMlBPniR8wpcyBMDOz。
我想让关键应该是自定义的,即我想给自己的关键名称。应该可以,请帮帮我? 提前谢谢。
答案 0 :(得分:2)
要创建自己的密钥,请不要使用push()
方法。
您可以使用set()
或update()
方法在特定数据库索引处创建新用户,例如:
this.db.object('users/YOUR_ID').set({
name: 'Aswin',
city:'kochi',
bedrooms:'rarish@gmail.com',
image:'9562096886',
path:'10',
price:'java',
title:'3',
type:'adipoli aanu'
});