起步

为 Vite 下的 uni-app 提供基于文件系统的路由

npm
pnpm
bun
yarn
npm i @uni-helper/vite-plugin-uni-pages

使用

vite.config.ts
import Uni from '@dcloudio/vite-plugin-uni'
import UniPages from '@uni-helper/vite-plugin-uni-pages'
// vite.config.ts
import { defineConfig } from 'vite'

// It is recommended to put it in front of Uni
export default defineConfig({
  plugins: [UniPages(), Uni()],
})

类型支持

tsconfig.json
jsconfig.json
{
  "compilerOptions": {
    "types": ["@uni-helper/vite-plugin-uni-pages"]
  }
}

pages.config.(ts|mts|cts|js|cjs|mjs|json) 定义全局属性。

pages.config.ts
import { defineUniPages } from '@uni-helper/vite-plugin-uni-pages'

export default defineUniPages({
  // 你也可以定义 pages 字段,它具有最高的优先级。
  pages: [],
  globalStyle: {
    navigationBarTextStyle: 'black',
    navigationBarTitleText: '@uni-helper',
  },
})

现在所有的 page 都会被自动发现!

导入虚拟模块即可访问所有页面的元数据

/// <reference types="@uni-helper/vite-plugin-uni-pages/client" />
import { pages } from 'virtual:uni-pages'

console.log(pages)