Javascript 将AngularFire firebaseListObservable对象转换为普通对象
我正在使用datatables(datatables.net),我想使用AngularFire2从Firebase中提取数据表的数据来获取对象 但是,这会得到一个FirebaseListObservable对象,我不确定如何将其用于datatables,我以前在datatables中使用过普通对象 有没有一种方法可以将FirebaseListObservable转换为普通对象,以便以这种方式使用 component.htmlJavascript 将AngularFire firebaseListObservable对象转换为普通对象,javascript,datatables,firebase-realtime-database,angularfire2,Javascript,Datatables,Firebase Realtime Database,Angularfire2,我正在使用datatables(datatables.net),我想使用AngularFire2从Firebase中提取数据表的数据来获取对象 但是,这会得到一个FirebaseListObservable对象,我不确定如何将其用于datatables,我以前在datatables中使用过普通对象 有没有一种方法可以将FirebaseListObservable转换为普通对象,以便以这种方式使用 component.html <sa-datatable [optio
<sa-datatable
[options]="{
data: rfis,
columns: [
{data: 'rfiNo'},
{data: 'title'},
{data: 'status'}
]
}"
filter="true" tableClass="table table-condenced table-striped table-bordered"
paginationLength="true" tableClass="table table-striped table-bordered table-hover"
width="100%">
<thead>
<tr>
<th data-class="expand"><i
class="fa fa-fw fa-user text-muted hidden-md hidden-sm hidden-xs"></i>
Lot #
</th>
<th>
Lot Name 1
</th>
<th>
Lot Name 2
</th>
</tr>
</thead>
</sa-datatable>
provider.ts
import { Injectable } from "@angular/core";
import { AngularFire, FirebaseListObservable } from 'angularfire2';
@Injectable()
export class RfisData {
rfis: FirebaseListObservable<any>;
data: any;
constructor(
af: AngularFire
) {
// this just to compare object types
this.data =[
{
"rfiNo": "Frist RFI",
"status": "open",
"title": "Its a fucking RFI dude"
}
];
this.rfis = af.database.list('/rfis');
}
getRfis(){
console.log(this.rfis);
return this.rfis;
}
// this just to compare object types
getData(){
console.log(this.data);
return this.data;
}
}
从“@angular/core”导入{Injectable};
从“angularfire2”导入{AngularFire,FirebaseListObservable};
@可注射()
导出类RFIDATA{
RFI:可观测的火基列表;
资料:有;
建造师(
角火
) {
//这只是为了比较对象类型
这是数据=[
{
“RFIO”:“第一次RFI”,
“状态”:“打开”,
“标题”:“这是个该死的RFI家伙”
}
];
this.rfis=af.database.list('/rfis');
}
getRfis(){
console.log(this.rfis);
返回此.rfis;
}
//这只是为了比较对象类型
getData(){
console.log(this.data);
返回此.data;
}
}
控制台日志的结果显示了对象的两个结果,一个是firebaseListObservable对象,另一个是普通的[object]
谢谢。这对我很有用:
af.database.object('/some/ref/to/object')
.map(val => Object.assign(new MyPlainObject(), val);
af.database.object('/some/ref/to/object')
.map(val => Object.assign(new MyPlainObject(), val);