在此CustomerHomePage小部件上方找不到正确的Provider <List <Store >>

问题描述

基本上,我正在创建一个电子商务应用程序,并且在主页中,该应用程序将从firebase中读取商品数据,并且此错误不断出现,无法在Homepage小部件上方找到正确的提供程序。

这是我的代码:

main.dart:

class Bradat extends StatelessWidget {

  @override
  Widget build(BuildContext context) {
   
    return MaterialApp(
      title: 'Brandat',debugShowCheckedModeBanner: false,theme: ThemeData(
        primarySwatch: Colors.blue,platform: TargetPlatform.iOS,),home: StreamProvider(
          create: (BuildContext context) => DatabaseService().getItemesList(),catchError: (_,__) => null,child: NavigationHomeScreen()
      ),);
  }
}

这是导航主屏幕:

class NavigationHomeScreen extends StatefulWidget {
  @override
  _NavigationHomeScreenState createState() => _NavigationHomeScreenState();
}

class _NavigationHomeScreenState extends State<NavigationHomeScreen> {
  Widget screenView;
  DrawerIndex drawerIndex;

  @override
  void initState() {
    drawerIndex = DrawerIndex.HOME;
    screenView = CustomerHomePage();
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    final items = Provider.of<List<Abaya>>(context);
    print(items);
    return Container(
      child: SafeArea(
        top: false,bottom: false,child: Scaffold(
          body: DrawerUserController(
            screenIndex: drawerIndex,drawerWidth: MediaQuery.of(context).size.width * 0.75,onDrawerCall: (DrawerIndex drawerIndexdata) {
              changeIndex(drawerIndexdata);
              //callback from drawer for replace screen as user need with passing DrawerIndex(Enum index)
            },screenView: screenView,//we replace screen view as we need on navigate starting screens like MyHomePage,HelpScreen,FeedbackScreen,etc...
          ),);
  }

这是我的数据库类:

class DatabaseService{

  final CollectionReference userCollection = Firestore.instance.collection("User");
  final CollectionReference itemCollection = Firestore.instance.collection("Item");
  final CollectionReference storeCollection = Firestore.instance.collection("Store");


  Future UpdateUserData(User user) async {
    return await userCollection.document(user.uid).setData({
      'firstName' :user.firstName,'lastName' :user.lastName,'phoneNumber' :user.phoneNumber,});
  }
  Stream<QuerySnapshot> get users{
    return userCollection.snapshots();
  }

  Future UpdateItemData(Abaya item) async {
    return await itemCollection.document(item.itemId).setData({
      'title' :item.title,'price' :item.price,'oldPrice' :item.oldPrice,'images' :item.images,'colors': item.colors,'sizes': item.sizes,'storeId': item.storeId,'quantity': item.quantity,});
  }

  Stream<List<Abaya>>  getItemesList(){
    return itemCollection.snapshots()
        .map((snapShot) => snapShot.documents
        .map((document) => Abaya.fromJson(document.data))
        .toList());
  }

  Future UpdateStoreData(Store store) async {
    return await storeCollection.document(store.idStore).setData({
      'brand' :store.brand,'rank' :store.rank,'logo' :store.logo,});
  }

  Stream<List<Store>>  getStoreList(){
    return storeCollection.snapshots()
        .map((snapShot) => snapShot.documents
        .map((document) => Store.fromJson(document.data))
        .toList());
  }


}

这是我的商品模型类:

  class Abaya{
  String itemId;
  String title;
  double price;
  double oldPrice;
  List<String> images;
  List<String> colors;
  List<String> sizes;
  int quantity;
  String storeId;


  Abaya({this.itemId,this.title,this.price,this.oldPrice,this.images,this.colors,this.sizes,this.quantity,this.storeId});

  Abaya.fromJson(Map<String,dynamic> parsedJSON)
      : title = parsedJSON['title'],price = parsedJSON['price'],oldPrice = parsedJSON['oldPrice'],images = parsedJSON['images'],colors = parsedJSON['colors'],sizes = parsedJSON['sizes'],storeId = parsedJSON['storeId'],quantity = parsedJSON['quantity'];
  }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...