对于库文件(例如foo.dart
),您可以使用以下行开始它:
library my_foo_lib;
为什么需要它?导入基于文件名(foo.dart
),而不是库字符串(my_foo_lib
):
import 'package:foo.dart';
必须声明库似乎是多余的并且容易出错。背后有充分的理由吗?
答案 0 :(得分:2)
您可以省略library
语句,然后它是一个隐式命名的库,其中包含一个空字符串作为名称,但是当您导入库时,您需要明确地命名它,否则您会收到一个错误,即您有多个库同名。
_
(下划线)开头的标识符是私有的。 Dart中的隐私是每个库。 part of
引用库名称。 使用反射查找类或函数时,请包含库名称。这样,您就可以在不同的库中区分具有相同名称的类。
Dart Programming Language Specification(17个图书馆和脚本)也说 “这个名称可能与进一步的语言演变有关。”