全局页面配置

用 definePagesConfig 维护 pages.json 全局性的页面默认配置

全局页面配置用于声明所有页面共享的默认配置。Oiyo 使用 definePagesConfig() 维护这部分内容,并同步生成到 pages.json

它解决的问题是:避免把应用级默认配置分散到每个页面。

definePagesConfig

基本用法:

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

export default definePagesConfig({
  globalStyle: {
    // 配置页面默认样式
  },
  tabBar: {
    // 配置 TabBar 样式
  },
  // 其他配置选项
})
了解 definePagesConfig 有哪些配置

适用范围

适合放置 globalStyletabBar 等应用级配置:

  • 默认页面背景色。
  • 默认导航栏标题、背景色、文字颜色等。
  • 页面通用样式配置。
  • TabBar 默认文字颜色、选中文字颜色等。
  • TabBar 全局样式配置。

不适合放:

  • 单个页面标题。
  • 单个页面布局。
  • 页面类型。
  • 页面私有配置。
  • 单个 TabBar 项的 textindex、图标路径。

这些应该写到页面的 definePageMeta() 中。

与页面元信息的分工

definePagesConfig() 负责全局默认值,definePageMeta() 负责单个页面。

使用原则

使用 definePagesConfig() 时遵循这些原则:

  • 应用级默认配置写在 pages.config.ts
  • 页面级配置写在页面自己的 definePageMeta()
  • TabBar 全局样式写在 pages.config.tstabBar
  • TabBar 单项配置写在页面自己的 definePageMeta({ tab })
  • 不要把 pages.json 当主要维护入口,它应作为 Oiyo 的生成结果来检查。

验证可用

修改 src/pages.config.ts 后,检查:

  1. src/pages.jsonglobalStyletabBar 或其他配置是否同步更新。
  2. 页面中 definePageMeta 配置是否在 src/pages.json 中仍保留。
  3. 全局配置和页面级配置是否职责清晰。