Flutter 文档网站
[Flutter 框架][] 的文档站点, 使用 Jaspr 构建并托管在 Firebase 上。
问题、错误和请求
我们欢迎对本网站的贡献和反馈。 请在我们的 issue tracker 中提交请求, 或创建一个 pull request。 对于简单的更改(例如调整一些文本), 使用 GitHub UI 进行更改是最简单的。
如果您对
api.flutter.dev 上的 API 文档
有问题,
请在
flutter/flutter 仓库中提交,
而不是在这个(flutter/website)仓库中。
API 文档嵌入在 Flutter 的源代码中,
因此由工程团队处理。
在提交 PR 之前
我们很高兴看到社区参与改进我们的文档! 在提交 PR 之前,请记住以下几点:
- 在分诊问题时, 我们有时会给问题打上 PRs welcome 标签。 不过,我们也欢迎针对其他问题提交 PR— 问题不一定要带有该标签。
- 请勿将我们的文档通过 Grammarly(或类似工具) 处理后,将这些更改作为 PR 提交。
- 我们遵循 Google Developer Documentation Style Guidelines—— 例如,避免使用 "i.e." 或 "e.g.", 避免使用第一人称, 并避免使用将来时。 您可以从 style guide highlights 或 word list 开始, 或使用每个风格指南页面顶部的搜索栏。
我们衷心感谢您愿意并乐于 协助保持网站文档的更新!
贡献
要更新此站点,请 fork 仓库,进行更改, 并生成一个 pull request。 对于小型、独立的更改(例如样式和拼写错误修复), 您可能不需要构建此站点。 通常您可以使用 GitHub UI 进行更改。 如有需要,我们可以在您的 pull request 中自动暂存这些更改。
如果您的更改涉及代码示例、添加/删除页面或影响导航, 请在提交前构建并测试您的工作。
如果您想要或需要构建站点,请遵循以下步骤。
构建站点
对于超出简单文本和 CSS 调整的更改, 我们建议在本地运行站点, 以实现编辑-刷新循环。
获取先决条件
要构建和开发该站点,您需要 安装包含 Dart 的最新稳定版 Flutter。
如果您尚未安装 Flutter 或需要更新,请按照 Install Flutter 或 Upgrading Flutter 中的说明操作。
如果您已安装 Flutter,请验证其是否在您的路径中 且为最新稳定版本:
flutter --version
Clone this repo
如果你不是 Flutter 组织的成员, 我们建议你在自己的 GitHub 账户下 create a fork 此仓库, 然后从该 fork 提交 pull request。
一旦你拥有了 fork(或者你是 Flutter 组织成员),
使用 git clone 克隆该仓库:
git clone https://github.com/flutter/website.git
设置本地环境并应用更改
在继续设置站点基础设施之前, 请按照 获取先决条件 中的说明, 验证已设置并可用正确版本的 Flutter。
-
可选: 克隆仓库后, 为你的更改创建一个分支:
git checkout -b <BRANCH_NAME> -
从仓库的根目录, 获取该网站的 Dart 依赖项。
dart pub get -
从根目录运行
dash_site工具以 验证您的配置并了解可用的命令。dart run dash_site --help -
从根目录,在本地提供该站点。
dart run dash_site serve
此命令会在本地端口生成并托管站点, 该端口会打印到您的终端。
-
通过导航到打印在终端上的本地 URL, 在浏览器中查看您的更改。
-
对本地仓库进行更改。
要在浏览器中查看您的更改, 您需要刷新页面。 站点在大多数更改后应自动重新构建,但如果 某些内容未更新,请退出进程并重新运行该命令。
-
将您的更改提交到分支并提交您的 PR。
如果您的更改较大,或者您希望测试它, 请考虑 验证您的更改。
[!TIP] 要查找您可以运行的其他命令, 请从仓库的根目录运行
dart run dash_site --help。
验证您的更改
检查文档和示例代码
如果您对
/examples、/sites 或 /tool 目录中的代码进行了更改,
请提交您的工作,然后运行以下命令以
验证其是否为最新且符合站点标准。
dart run dash_site check-all
如果此脚本报告任何错误或警告,
请解决这些问题并重新运行该命令。
如果您有任何问题,请在您的 issue 或 pull request 中留下评论,
我们会尽力提供帮助。
您还可以在 #hackers-devrel 频道
与我们在 Flutter contributors Discord 上聊天!
检查链接
如果您已对内容进行了更改,并希望检查所有 内部链接和 Markdown 链接引用是否有效, 请在本地构建站点并运行以下命令。
-
在本地构建站点。
dart run dash_site build -
验证所有 Markdown 链接引用均已解析。
dart run dash_site check-link-references -
验证所有内部链接是否有效。
[!NOTE] 此命令依赖于
firebaseCLI 工具位于你的 PATH 中。 如果你尚未安装它或已有一段时间未更新, 请按照 设置或更新 Firebase CLI 操作。dart run dash_site check-links
如果任一命令报告了任何错误或警告, 请解决这些问题,重新构建站点,并重新运行该命令。
刷新代码摘录
如果构建因以下错误而失败
Error: Some code excerpts need to be updated!
这意味着站点 Markdown 文件中的一个或多个代码摘录
与相应 .dart 文件中声明的代码区域
不完全一致。
.dart 文件是代码片段的权威来源,
而 Markdown 文件中前述的 <?code-excerpt> 指令指定了
如何从 .dart 文件中复制这些片段。
要解决此错误并更新 Markdown 片段以使其匹配,
请在 website 目录的根目录下
运行 dart run dash_site refresh-excerpts。
要了解有关创建、编辑和使用代码摘录的更多信息, 请参阅 excerpt updater package documentation。