**显示类别时出现问题。我正在使用
异步
功能,但未显示数据**
<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>
我已经尝试过了,但是没有用
product-form.component.ts
export class ProductFormComponent {
categories$;
constructor(categoryService: CategoryService) {
this.categories$ = categoryService.getCategories();
}
}
在这里,我要创建产品数据
save(product) {
this.productService.create(product);
console.log(product);
}
category.service.ts **通过使用
.valueChanges
我能够获取数据,但没有将数据存储在firebase db中。显示未定义**
export class CategoryService {
constructor(private db: AngularFireDatabase) {}
getCategories() {
return this.db.list('/categories').valueChanges();
}
}
我使用此方法创建商品数据并将其推送到数据库
product.service.ts
export class ProductService {
constructor(private db: AngularFireDatabase) {}
create(product) {
return this.db.list('/products').push(product);
}
}
这是我遇到的错误
InvalidPipeArgument:管道“ AsyncPipe”的“ [object Object]”
答案 0 :(得分:0)
列表类别:
修改getCategories()
。添加snapshotChanges()
或valueChanges()
尝试这样:
return this.db.list('/categories').snapshotChanges();
或
return this.db.list('/categories').valueChanges();
创建产品:
$products: FirebaseListObservable<any[]>;
create(product) {
return this.$products.push(product);
}