旧版标志
为了帮助部分用户在 Astro 版本之间迁移,我们会偶尔引入一些 legacy
标志。
这些标志允许你在最新版本中可选地使用 Astro 的一些已弃用或过时的行为,以便你可以继续升级并享受 Astro 的新版本,直到你能够完全更新你的项目代码。
集合
段落标题 集合类型: boolean
默认值: false
astro@5.0.0
启用内容集合的旧版行为(如 Astro v2 至 v4 中所使用)
如果启用,(仅)data
和 content
集合会使用旧版的内容集合来实现。(仅)装载了 loader
的集合则会继续使用 Content Layer API 来实现。这两种类型的集合能同时存在于一个项目当中,而分别使用他们各自的实现形式。
以下限制仍然存在:
- 任何旧版(
type: 'content'
或type: 'data'
)集合仍需位于src/content/
目录下。 - 这些旧版集合不会被转换为隐式使用
glob()
加载器,而是由旧版代码处理。 - 在
src/content/
中禁止使用(定义了loader
的)Content Layer API 集合,但它可以位于项目中任何其他的位置。
当你准备移除此标志,并为旧版集合迁移到新的 Content Layer API 时,你必须为 src/content/
中,那些想继续用作集合的目录去定义一个集合。声明一个空集合就足够了,Astro 将为你的旧版集合隐式地生成合适的定义: