Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/202.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 找不到正确的提供程序<;用户模型>;在这个生成器小部件上面_Android_Flutter - Fatal编程技术网

Android 找不到正确的提供程序<;用户模型>;在这个生成器小部件上面

Android 找不到正确的提供程序<;用户模型>;在这个生成器小部件上面,android,flutter,Android,Flutter,这是一个错误 这是因为您使用了不包含提供程序的BuildContext 由你选择。有几个常见的场景: 您在main.dart中添加了一个新的提供程序,并执行了热重新加载。 要修复此问题,请执行热重启 您试图读取的提供程序位于不同的路径中 提供者是“有范围的”。所以,如果在路由中插入一个提供者,那么 其他路由将无法访问该提供商 您使用了一个BuildContext,它是您试图读取的提供程序的祖先 确保生成器位于您的MultiProvider/Provider下。 这通常发生在创建提供者并尝试

这是一个错误 这是因为您使用了不包含提供程序的
BuildContext
由你选择。有几个常见的场景:

  • 您在
    main.dart
    中添加了一个新的提供程序,并执行了热重新加载。 要修复此问题,请执行热重启

  • 您试图读取的提供程序位于不同的路径中

    提供者是“有范围的”。所以,如果在路由中插入一个提供者,那么 其他路由将无法访问该提供商

  • 您使用了一个
    BuildContext
    ,它是您试图读取的提供程序的祖先

    确保生成器位于您的MultiProvider/Provider下。 这通常发生在创建提供者并尝试立即读取它时

    例如,而不是:

    Widget build(BuildContext context) {
      return Provider<Example>(
        create: (_) => Example(),
        // Will throw a ProviderNotFoundError, because `context` is associated
        // to the widget that is the parent of `Provider<Example>`
        child: Text(context.watch<Example>()),
      ),
    }
    
我的代码

import 'package:geolocator/geolocator.dart' show Geolocator, Position;
import 'package:google_maps_flutter/google_maps_flutter.dart';
import 'package:geocoding/geocoding.dart';

class SearchingScreen extends StatelessWidget {
  AuthBase authBase = AuthBase();
    @override
    Widget build(BuildContext context) {
      return ChangeNotifierProvider(
       create: (_) => UserModel(),
        child:HomeView(),
      );

    }
  }
import 'package:geolocator/geolocator.dart' show Geolocator, Position;
import 'package:google_maps_flutter/google_maps_flutter.dart';
import 'package:geocoding/geocoding.dart';

class SearchingScreen extends StatelessWidget {
  AuthBase authBase = AuthBase();
    @override
    Widget build(BuildContext context) {
      return ChangeNotifierProvider(
       create: (_) => UserModel(),
        child:HomeView(),
      );

    }
  }