【发布时间】:2021-07-05 19:27:37
【问题描述】:
我正在使用 angularfire 从 firebase 获取类别列表。 这是数据库的JSON导出。
{
"categories" : {
"bread" : {
"Name" : "Bread"
},
"fruits" : {
"Name" : "Fruits"
},
"seasonings" : {
"Name" : "Seasonings"
}
},
"users" : {
"8ji3HjnPD0es5K5rNj2jHpPWeEk1" : {
"email" : "abc@gmail.com",
"isAdmin" : true,
"name" : "Kartik Dolas"
}
},
"vegetables" : {
"Name" : "Vegetables"
}
}
service.ts
import { AngularFireDatabase } from 'angularfire2/database';
...
constructor(private db:AngularFireDatabase) { }
getCategories(){
return this.db.list('/categories')
}
component.ts
export class PrductFormComponent implements OnInit {
categories$;
constructor(categServ:CategoryService) {
this.categories$ = categServ.getCategories()
console.log(this.categories$);
}
ngOnInit(): void {
}
}
component.html
<div class="form-group">
<label for="category">Category</label>
<select id="category" class="form-control">
<option value=""></option>
<option *ngFor="let c of categories$ | async" [value]="c.$key">
{{ c.name }}
</option>
</select>
</div>
我使用的是 firebase 7.24 版和 angularfire2 5.4.2 版。
我希望我的输出是 Bread,Fruits,Seasonings 的下拉菜单,但出现错误:InvalidPipeArgument: '[object Object]' for pipe 'AsyncPipe'
【问题讨论】:
标签: angular firebase asynchronous angularfire2