0Pricing
Dart Academy · 课时

导入、导出与库

组织代码并重新导出代码

导入、导出与库 是 CoddyKit 上的免费 Dart Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Dart Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Dart Academy 课程共包含 4 节课。

导入的作用

import 会将另一个文件或软件包引入代码,以便您使用其中的类和函数。每个 Dart 文件都从它们开始。📥

import 'dart:math';

导入核心 SDK

内置库使用 dart: 前缀。例如,dart:math 会提供 sqrt 和 Random,无需安装任何内容。

import 'dart:convert';

导入软件包

要使用来自 pub 的依赖项,请使用 package: 前缀导入它,后面接软件包名称和其中的文件路径。

import 'package:http/http.dart';

导入自己的文件

对于项目中的文件,请在引号中使用相对路径。这样无需软件包前缀,也能让相关代码保持连接。

import 'models/user.dart';

为导入添加前缀

如果两个库包含同名内容,请添加 as 前缀。之后通过该前缀调用成员,即可避免名称冲突。

import 'package:http/http.dart' as http;

仅显示所需内容

使用 show,可以只从库中导入指定名称。这样能保持命名空间整洁,并清楚表达您的意图。

import 'dart:math' show pi, sqrt;

隐藏不需要的名称

hide 与 show 相反。它会导入除所列名称之外的所有内容,非常适合避开单个冲突。

import 'dart:math' hide Random;

什么是库

在 Dart 中,每个文件默认都是一个 library。顶层公共成员对导入者可见,无需其他设置。

使用下划线实现私有化

以下划线开头的名称对其库而言是私有的。导入者无法看到它,这正是隐藏实现细节的方式。

int _secret = 42;

使用 export 重新导出

export 指令会通过您的文件转发另一个库的公共名称,因此用户只需导入一个入口,而不必导入多个文件。

export 'src/user.dart';

构建集中导出文件

barrel 文件就是一个充满导出的库。它为您的软件包提供一个整洁统一的公共 API 表面,供所有人导入。

export 'src/user.dart';
export 'src/order.dart';

快速检查

如何让顶层名称对其库保持私有?

回顾

您已经学会导入 SDK、软件包和本地代码,使用 show 和 hide 对导入内容进行筛选,并使用 export 提供整洁的 API。🎉

常见问题解答

「导入、导出与库」课时是免费的吗?

是的 — 「导入、导出与库」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Dart Academy 课程的其余内容,请升级到 CoddyKit PRO。 Dart Academy 课程共包含 4 节课。

「导入、导出与库」这节课中我会学到什么?

组织代码并重新导出代码 你通过在浏览器中直接运行的动手代码来练习 Dart Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Dart Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Dart Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。

「导入、导出与库」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Dart Academy 课中编写并运行代码吗?

能。每节 Dart Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. pubspec.yaml 的组成
  2. 使用 dart pub 添加依赖项
  3. 导入、导出与库
  4. 版本约束与锁定文件
← 返回 Dart Academy