导入的那些关键字
import
是 Dart 中用于引入外部库或文件的关键字,它的作用是将其他 Dart 文件或库中的代码引入到当前文件中,以便在当前文件中使用这些代码。
例子
假设有一个包含以下代码的 Dart 文件 example.dart:
dartCopy code
// File: example.dart
class ExampleClass {
void exampleMethod() {
print('This is an example method.');
}
}
你可以在另一个 Dart 文件中通过 import 引入这个文件:
dartCopy code
// File: main.dart
import 'example.dart';
void main() {
ExampleClass exampleObject = ExampleClass();
exampleObject.exampleMethod();
}
export
是 Dart 中用于将库的部分或全部内容公开给其他库的关键字。通过使用 export,你可以创建可重用的库,并使其内容能够被其他 Dart 文件或库引用。
例子
假如一个文件名为index
export 'module.dart';
export 'main.dart';
在许个文件中同时用到main 和 module就不用分开导入 直接
import 'index.dart';
就可以使用这两个文件的内容 节省代码也使导入操作更好管理
part
part 用于在一个 Dart 文件中引入另一个 Dart 文件,将它们合并成一个库。这个文件通常包含了库的一部分实现。
例子
-
// File: library.dart library my_library; part 'part_file.dart'; void main() { print(greet('Alice')); } - 在这个例子中,
library.dart使用了part关键字引入了另一个文件part_file.dart。part_file.dart文件包含了库的一部分实现。
part of
part of 用于标识一个文件是库的一部分
例子
-
// File: part_file.dart part of my_library; String greet(String name) { return 'Hello, $name!'; } - 在这个例子中,
part_file.dart使用了part of my_library;,表明它是my_library这个库的一部分
通过使用 part 和 part of,你可以将一个大的库拆分成多个文件,每个文件负责实现库的一部分功能。这提高了代码的可维护性,使团队协作更加灵活,同时也降低了单个文件变得庞大和难以管理的风险。
as
在 Dart 中,as 关键字用于给导入的库或模块起一个别名。这个别名可以在代码中使用,使得代码更简洁,避免与其他可能有相同名称的库发生冲突。
例子
import 'library_or_file.dart' as alias;
其中,library_or_file.dart 是你要导入的 Dart 文件或库的路径,而 alias 是你为该库起的别名
hide
在 Dart 的 import 语句中,hide 关键字用于选择性地隐藏导入的库中的一些部分,以避免它们在当前文件中可见。这对于避免命名冲突或仅导入所需的部分非常有用。
例子
import 'library_or_file.dart' hide Name1, Name2;
其中,library_or_file.dart 是你要导入的 Dart 文件或库的路径,而 Name1, Name2 是你要在当前文件中隐藏的内容的名称。
show
在 Dart 的 import 语句中,show 关键字用于选择性地导入库中的一些部分,以指定只有这些部分在当前文件中可见。只导入所需的特定内容,而不是整个库。
例子
import 'library_or_file.dart' show Name1, Name2;
其中,library_or_file.dart 是你要导入的 Dart 文件或库的路径,而 Name1, Name2 是你要在当前文件中显示可见的内容的名称。
library
在 Dart 中,library 是用于声明一个 Dart 文件是一个库(library)的关键字。
例子
library library_name;
// 该库的内容(类、函数、变量等)在这里定义
其中,library_name 是库的名称,它是一个唯一标识符,通常与文件名或文件夹名相关。其他 Dart 文件可以使用 import 语句引入这个库,并使用其中的内容。
deferred
deferred 是 Dart 中用于实现延迟加载。延迟加载允许你在需要的时候再加载某个库,而不是在程序启动时立即加载,一般用不到 ,在web中使用 在使用 deferred 时,必须使用 await 来确保库在被使用之前已经加载完毕。
例子
import 'library_or_file.dart' deferred as alias;
其中,library_or_file.dart 是你要导入的 Dart 文件或库的路径,而 alias 是你为该导入的库指定的别名。