uni-page-generator
SKILL.md
uni-app 页面生成器
快速创建符合 wot-starter 项目规范的 uni-app 页面。
使用场景
- 创建主包页面 (
src/pages/) - 创建分包页面 (
src/subPages/,src/subEcharts/等) - 自动配置路由和布局
页面模板
基础页面
<script setup lang="ts">
definePage({
name: '页面名称', // 路由 name,用于编程式导航
layout: 'default', // 布局:'default' | 'tabbar'
style: {
navigationBarTitleText: '页面标题',
},
})
const router = useRouter()
</script>
<template>
<view class="p-3">
<!-- 页面内容 -->
</view>
</template>
TabBar 页面
<script setup lang="ts">
definePage({
name: 'home',
layout: 'tabbar', // 使用 tabbar 布局
style: {
navigationBarTitleText: '首页',
},
})
</script>
<template>
<view class="box-border py-3">
<!-- TabBar 页面内容 -->
</view>
</template>
目录结构
src/
├── pages/ # 主包页面(TabBar 页面)
│ ├── index/
│ │ └── index.vue
│ └── about/
│ └── index.vue
├── subPages/ # 分包页面
│ ├── router/
│ ├── request/
│ └── ...
└── subEcharts/ # ECharts 分包
创建步骤
-
确定页面位置
- TabBar 页面 →
src/pages/{name}/index.vue - 普通页面 →
src/subPages/{name}/index.vue
- TabBar 页面 →
-
使用 definePage 宏
- 配置
name用于编程式导航 - 配置
layout选择布局 - 配置
style设置导航栏
- 配置
-
页面跳转
const router = useRouter()
// 使用 name 跳转
router.push({ name: 'detail' })
// 使用 path 跳转
router.push('/subPages/detail/index')
// 带参数跳转
router.push({ name: 'detail', query: { id: '123' } })
注意事项
- 分包目录需在
vite.config.ts的subPackages中注册 - 页面文件名固定为
index.vue - 使用 UnoCSS 原子化样式
Weekly Installs
3
Repository
wot-ui/wot-starterGitHub Stars
256
First Seen
Feb 26, 2026
Security Audits
Installed on
amp3
github-copilot3
codex3
kimi-cli3
gemini-cli3
cursor3