41 lines
951 B
Markdown
41 lines
951 B
Markdown
---
|
||
name: frontend-web-layout
|
||
description: Web 前台布局规范(Nuxt 4),布局文件组织与使用
|
||
globs:
|
||
- "frontend/web/app/layouts/**/*.vue"
|
||
---
|
||
|
||
## 布局文件
|
||
|
||
| 布局 | 文件 | 说明 |
|
||
|------|------|------|
|
||
| default | `layouts/default.vue` | 默认布局(含 header/footer) |
|
||
| blank | `layouts/blank.vue` | 空白布局 |
|
||
| container | `layouts/container.vue` | 容器布局 |
|
||
| member | `layouts/member.vue` | 会员中心布局 |
|
||
|
||
## 代码模板
|
||
|
||
```vue
|
||
<template>
|
||
<div>
|
||
<Header />
|
||
<slot />
|
||
<Footer />
|
||
</div>
|
||
</template>
|
||
```
|
||
|
||
## 关键约定
|
||
|
||
- Nuxt 自动加载 `layouts/` 目录下的布局文件
|
||
- 页面通过 `definePageMeta({ layout: 'name' })` 指定布局
|
||
- 默认布局为 `default.vue`
|
||
- 布局中可使用 `<slot />` 嵌入页面内容
|
||
|
||
## 检查清单
|
||
|
||
- [ ] 布局文件是否放在 layouts/ 目录
|
||
- [ ] 页面是否指定了正确的布局
|
||
- [ ] 布局中是否包含必要的公共元素
|