我有一个包含小部件和实用程序功能的软件包。我想在用户导入程序包时将小部件显示为全局变量,这是正常情况。但是,我希望实用程序函数在某些速记变量下公开。
示例布局
lib/my_package.dart
lib/src/utils/a.dart
lib/src/utils/b.dart
lib/src/widgets/a.dart
lib/src/widgets/b.dart
我想到的唯一方法是让用户导入两个文件。
import 'package/my_package/widgets.dart'
import 'package/my_package/utils.dart' as utils;
还有其他方法吗?这些实用程序应该保留在不同的文件中,因此创建包含它们的类将行不通,这意味着公开单例获取器不是一种选择。我希望用户只能导入一个文件,因为这两个部分都是非常必要的。
# my_package.dart
import 'src/utils.dart' as utils; # <-- expose me
export 'src/widgets.dart'
我理解为什么不将export as
添加到语言中,但是将import as
暴露给库的使用者又是什么呢?