💡
原文中文,约2800字,阅读约需7分钟。
📝
内容提要
Nuxt Content 是处理 Markdown 和 YAML 的模块。在使用 Nuxt v4 和 v3 时,数组字段筛选存在问题。v3 不支持 $contains 操作,需要使用 SQLite 的 LIKE 语法来优化查询,以减少 _payload.json 文件体积并提升性能。
🎯
关键要点
- Nuxt Content 是处理 Markdown 和 YAML 的模块。
- 在 Nuxt v3 中,数组字段筛选存在问题,$contains 操作不被支持。
- 使用 SQLite 的 LIKE 语法可以优化查询,减少 _payload.json 文件体积。
- Nuxt Content v2 支持类似 MongoDB 的 JSON 文档查询语法,方便进行标签筛选。
- Nuxt Content v3 的 queryCollection API 需要遵循 SQL 语法,导致数组字段筛选变得复杂。
- 使用 .where() 方法时,字段名必须作为首个参数传入。
- 通过手动过滤文章标签,虽然满足需求,但导致 _payload.json 文件体积膨胀。
- 利用 SQLite 的字符串操作特性,通过 LIKE 语法进行数组包含筛选,显著降低文件体积。
- 优化后,tags 目录体积从 2.9MiB 降至 1.4MiB,单个 _payload.json 体积从 23.1KiB 降至 1.01KiB。
🏷️
标签
➡️