flutter - 将流列表添加到块颤动
问题描述
您好,我正在尝试从 Firestore 获取数据,将其映射到我正在使用 Rxdart 的流中,如何将产品列表的此流添加到流中。当我尝试这样做时,它一直在说。参数类型 Stream> 不能被分配给参数类型列表。我是新来的颤振,请帮忙。
产品服务;
class ProductService {
Firestore _db = Firestore.instance;
var random = Random();
Stream<List<Product>> fetchProducts() {
return _db.collection('products').snapshots().map(
(snapshot) => snapshot.documents
.map((document) => Product.fromFirestore(document.data))
.toList(),
);
}
}
集团
class ProductBloc {
final _products = BehaviorSubject<List<Product>>();
final ProductService _db = ProductService();
//getters
Stream<List<Product>> get products => _products.stream;
Function(List<Product>) get changeProducts => _products.sink.add;
loadData() async {
try {
var products = _db.fetchProducts();
_products.sink.add(products);
} catch (err) {
print(err);
}
}
dispose() {
_products.close();
}
}