ARC 是运行站点所用的运行时和命令行工具;AFS 是它用路径组织数据的文件系统抽象。Web Device 是 ARC 中负责静态网站的 AFS provider,也就是读取一类 AFS 路径的运行时模块。它读取站点里的页面、内容对象和 Web 配置,渲染出静态 HTML。它不是另一套独立的网站框架,站点仍然以 AFS 目录中的文件为事实来源。
先分清三块目录
一个站点通常把职责分在下面三处:
| 目录 | 负责什么 |
|---|---|
pages/ | 可访问的页面、路由和页面布局。Web 页面优先使用 layout.aup;layout.json 仍是兼容回退。 |
content/ | 目录化的内容对象。对象通常用 content.md 或 index.md 保存正文,并可提供 content.zh.md 这样的语言变体和 YAML front matter(正文开头的 YAML 头信息)。 |
.web/ | 站点范围的配置、组件、主题、模板和静态资源。.web/site.yaml 是推荐的站点配置入口。 |
AUP 是 ARC 用来声明界面和 layout 的描述语言。页面布局用 AUP 组织 Web 组件。不要假设任意 AUP 原生节点都能直接渲染成网页内容:Web layout 必须引用站点 .web/components/ 或主题库提供的组件。当前边界见AUP layout 边界。
从哪里开始
按任务读,而不是一次读完全部页面:
| 想做什么 | 从哪里开始 |
|---|---|
| 从空目录开始 | 起步;先确认范围,再建立第一个站点,并在本地直接运行它。 |
| 理解一个已有站点 | 理解站点;从目录、页面、内容和路由读起。 |
| 开始编写或改造站点 | 编写站点;从全站配置、页面布局和内容绑定开始。 |
| 查精确契约 | 参考;这里会收录目录、AUP、source binding、组件和版本边界。 |
| 看一条完整路径 | 示例;从最小信息站、内容站和自定义组件逐步展开。 |
完整结构先固定,再逐页以当前实现填充。每个草稿页都会说明它将回答的问题;带命令的页面只在当前运行时实测通过后才变成操作参考。
文章提供背景,文档提供当前契约
Web Device:声明就是网站,两条路怎么选 讨论的是设计思路和当时的架构语境。ARC 上的 Web 内容系统:不理解你的内容,反而更简单 解释内容对象为什么不必先按文章、产品或活动分类。
这些文章可以帮助理解取舍,但不替代这里的操作和参考。本文档以当前代码、测试和实际运行结果为准;文章中与当前实现不一致的历史表述,不会自动成为产品承诺。
版本边界
本页的初始事实已按 arc 2.0.0-beta.25 核对。任何带命令的页面都必须注明验证版本和实际输出;使用其他版本时,先核对相应的命令参考和兼容性说明。