pages.config.ts

全局 pages.json 配置入口

src/pages.config.ts 用来描述全局页面配置,它的结构对应 uni-app 的 pages.json(全局部分)。

职责

pages.config.ts 用于表达“全局层面的 pages.json 配置差异”,比如 globalStyletabBar 等。

通常它会与页面扫描结果合并,最终生成 pages.json

约定

  • 推荐使用 definePagesConfig() 导出配置,以获得类型提示与更稳定的结构约束
  • 页面级差异(标题、导航栏样式、布局等)推荐写在页面内的 definePageMeta()

结构示意(表达形状,不展开流程):

src/pages.config.ts
import { definePagesConfig } from '@skiyee/oiyo/config'

export default definePagesConfig({
  globalStyle: {
    // ...
  },
})

页面的差异化配置(比如某个页面的标题/样式/布局)推荐写在页面内的 definePageMeta()

definePageMeta 字段说明(API)

TabBar 属于全局配置,具体任务流程与注意点见使用指南。

尝试为应用配置底部的 TabBar 导航栏

边界

不要在 pages.config.ts 里维护“页面列表本身”(pages / subPackages)。这些内容会由 Oiyo 的扫描结果生成/覆盖。

export default definePagesConfig({
  // 反例:这些字段如果你手写,后续很可能会被 Oiyo 的扫描结果覆盖
  pages: [],
  subPackages: [],
})

更稳的做法是:

  • 全局差异写在 src/pages.config.tsglobalStyle/tabBar
  • 页面差异写在页面内的 definePageMeta()
pages.config.tspages.json 形成映射的关系,pages.json 是由 Oiyo 生成/维护的产物文件,不要手动更改 pages.json,直接更改 pages.config.ts 就行。
进一步了解 definePagesConfig 参考说明。