两个插件同名 class flutter
Two plugins have the same class name flutter
我正在导入
permission_handler插件和
位置插件.
问题是这两个都有一个名为 PermissionStatus 的 class,我需要使用 location 中的 PermissionStatus.granted插件,因为我正在请求从 location 插件访问位置的权限。所以我需要有人向我解释的是
a) 如何解决从一个插件中使用 class 的问题,它恰好在我导入的另一个插件中同名。
或
b) 如何仅使用 [= 正确请求访问位置的权限50=]
如果您导入了两个具有冲突标识符的 libraries
,那么您可以为一个或两个 libraries
指定一个 import prefix
。
例如,如果 library1
和 library2
都有一个 Element
class,那么您可能有这样的代码:
import 'package:lib1/lib1.dart';
import 'package:lib2/lib2.dart' as lib2;
// use in your code like
Element libraryOneElement = Element(); // from library one
lib2.Element libraryTwoElement = lib2.Element(); // from library two
以您的代码为例的演示:
import '...permission_handler...';
import '... location...' as location;
// use in your code like
var permissionHandlerStatus = PermissionStatus.granted;
var locationPermissionStatus = location.PermissionStatus.granted;
我正在导入
permission_handler插件和
位置插件.
问题是这两个都有一个名为 PermissionStatus 的 class,我需要使用 location 中的 PermissionStatus.granted插件,因为我正在请求从 location 插件访问位置的权限。所以我需要有人向我解释的是
a) 如何解决从一个插件中使用 class 的问题,它恰好在我导入的另一个插件中同名。
或
b) 如何仅使用 [= 正确请求访问位置的权限50=]
如果您导入了两个具有冲突标识符的 libraries
,那么您可以为一个或两个 libraries
指定一个 import prefix
。
例如,如果 library1
和 library2
都有一个 Element
class,那么您可能有这样的代码:
import 'package:lib1/lib1.dart';
import 'package:lib2/lib2.dart' as lib2;
// use in your code like
Element libraryOneElement = Element(); // from library one
lib2.Element libraryTwoElement = lib2.Element(); // from library two
以您的代码为例的演示:
import '...permission_handler...';
import '... location...' as location;
// use in your code like
var permissionHandlerStatus = PermissionStatus.granted;
var locationPermissionStatus = location.PermissionStatus.granted;