常用软件包
此页面列出了一些 Dart 开发者发布的、最受欢迎和有用的软件包。要查找更多软件包——并搜索核心库——请使用 pub.dev 站点。
常用软件包分为三类
通用软件包
#在各种项目中使用这些软件包。
软件包 | 描述 | 常用 API |
---|---|---|
archive | 编码和解码各种归档和压缩格式。 | Archive, ArchiveFile, TarEncoder, TarDecoder, ZipEncoder, ZipDecoder |
characters | 操作字符串以处理用户感知的字符(Unicode 字素簇)。 | String.characters, Characters, CharacterRange |
cronet_http | 提供对 Android Cronet HTTP 客户端的访问,使用与 package:http 相同的接口。 | |
cupertino_http | 提供对 Apple Foundation URL Loading System 的访问,使用与 package:http 相同的接口。 | |
http | 提供一组高级函数和类,以简化 HTTP 资源的消耗。 | delete(), get(), post(), read() |
intl | 国际化和本地化工具,支持复数和性别、日期和数字格式化和解析以及双向文本。 | Bidi, DateFormat, MicroMoney, TextDirection |
json_serializable | 生成 JSON 操作代码。要了解更多信息,请查阅JSON 支持。 | @JsonSerializable |
logging | 向您的应用程序添加消息日志记录。 | LoggerHandler, Level, LogRecord |
mockito | 在测试中模拟对象。在为依赖注入编写测试时很有帮助。与 test 软件包一起使用。 | Answering, Expectation, Verification |
path | 操作不同类型的路径。要了解更多信息,请查阅 Unboxing Packages: path。 | absolute(), basename(), extension(), join(), normalize(), relative(), split() |
quiver | 简化核心 Dart 库的使用。Quiver 提供额外支持的一些库包括 async、cache、collection、core、iterables、patterns 和 testing。 | CountdownTimer (quiver.async); MapCache (quiver.cache); MultiMap, TreeSet (quiver.collection); EnumerateIterable (quiver.iterables); center(), compareIgnoreCase(), isWhiteSpace() (quiver.strings) |
shelf | 为 Dart 提供 Web 服务器中间件。Shelf 使创建和组合 Web 服务器以及 Web 服务器的各个部分变得容易。 | Cascade, Pipeline, Request, Response, Server |
stack_trace | 解析、检查和操作 Dart 生成的堆栈跟踪。还将堆栈跟踪转换为比原生 StackTrace 实现更易读的格式。要了解更多信息,请查阅 Unboxing Packages: stack_trace。 | Trace.current(), Trace.format(), Trace.from() |
test | 标准化在 Dart 中编写和运行测试。 | expect(), group(), test() |
yaml | 解析 YAML 标记。 | loadYaml(), loadYamlStream() |
扩展 Dart 核心库的软件包
#以下每个软件包都基于核心库构建,添加功能并填补缺失的功能
软件包 | 描述 | 常用 API |
---|---|---|
async | 扩展 dart:async,添加实用程序类以处理异步计算。要了解更多信息,请查阅 Unboxing Packages: async part 1、part 2 和 part 3。 | AsyncMemoizer, CancelableOperation, FutureGroup, LazyStream, Result, StreamCompleter, StreamGroup, StreamSplitter |
collection | 扩展 dart:collection,添加实用程序函数和类,以使集合的使用更加容易。要了解更多信息,请查阅 Unboxing Packages: collection。 | Equality, CanonicalizedMap, MapKeySet, MapValueSet, PriorityQueue, QueueList |
convert | 扩展 dart:convert,添加编码器和解码器,用于在不同的数据表示之间进行转换。其中一种数据表示是百分比编码,也称为URL 编码。 | HexDecoder, PercentDecoder |
io | 包含两个库 ansi 和 io,以简化文件、标准流和进程的使用。使用 ansi 库自定义终端输出。io 库具有处理进程、stdin 和文件复制的 API。 | copyPath(), isExecutable(), ExitCode, ProcessManager, sharedStdIn |
专用软件包
#要查找专用软件包,例如 Flutter 和 Web 开发的软件包,请查阅以下部分。
Flutter 软件包
#要了解有关 Flutter 软件包的更多信息,请查阅 Flutter 文档中的 使用软件包,或在 pub.dev 站点搜索 Flutter 软件包。
Web 软件包
#要了解有关 Web 软件包的更多信息,请查阅Web 库和软件包,或在 pub.dev 站点搜索 Web 软件包。
命令行和服务器软件包
#要了解有关 CLI 或服务器软件包的更多信息,请参阅命令行和服务器库和软件包。或使用 pub.dev 站点搜索其他软件包。
除非另有说明,否则本网站上的文档反映了 Dart 3.7.1。页面上次更新于 2025-01-06。 查看源代码 或 报告问题。