Files
nianxx-h5/AGENTS.md
DEV_DSW 0c23d7ccb5 refactor: replace flex-full with flex-1 and standardize scrollbar styles
- replace all outdated flex-full utility classes with modern flex-1 across Vue components
- standardize scrollbar hiding by using scrollbar-none utility instead of verbose vendor prefixes
- update order detail page layout and scroll container styling
- add scrollbar-none usage guidelines to AGENTS.md documentation
2026-05-29 10:07:20 +08:00

79 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 项目协作指南
本仓库是一个基于 Vite 的 H5 Web 项目。本文档用于约束自动化 Agent 在仓库内的工作方式、目录约定与验证流程。
## 技术栈与入口
- 构建Vite 5ESM`package.json``"type": "module"`
- 框架Vue 3 + TypeScript
- 路由vue-router 4入口为 `src/router/index.ts`,当前路由配置较少/可能未完成)
- 状态管理Pinia`src/stores/`
- UIVant 4
- 样式Tailwind CSS v4通过 `@tailwindcss/vite`),并存在组件级 SCSS
- 国际化vue-i18n`src/i18n/`,含 Vant 语言同步)
- 网络/事件axios、mitt
入口文件:
- 应用入口:`src/main.ts`
- 根组件:`src/App.vue``<RouterView />`
- 全局样式/主题:`src/styles/main.css`
## 目录结构与新增代码放置
- 页面:`src/pages/<module>/...`
- 公共组件:`src/components/<ComponentName>/...`
- 国际化:`src/i18n/`
- 语言包按模块拆分:`src/i18n/modules/{common,home,quick}/`
- 工具/请求:`src/utils/`(当前存在 `requets.ts`,文件名可能为历史拼写;不要在未确认引用关系前擅自更名)
组件目录常见形态(尽量遵循):
- `src/components/Foo/index.vue`
- `src/components/Foo/styles/index.scss`
- 可选:`README.md``demo.vue``prompt.md``images/`
## 代码风格约定
- Vue 组件优先使用 `<script setup lang="ts">`
- 组件样式优先放在同目录 `styles/index.scss`,并在组件内通过 `lang="scss"` + `scoped` 方式引入/编写
- 全局主题与 Vant CSS 变量覆盖集中在 `src/styles/main.css`,避免把全局变量散落到页面/组件中
- TypeScript开启 `strict``noUnusedLocals``noUnusedParameters` 等约束;新增代码需保持零 TS 报错
- 路径别名:`@/* -> src/*`TS 与 Vite 均配置),新增引用优先使用 `@/` 形式
本仓库未集成 ESLint/Prettier 等统一格式化工具:变更时以“周边现有代码”为准保持一致性。
## 开发、构建与测试(变更后必须执行)
使用 Yarn。
- 安装依赖:`yarn`
- 本地开发:`yarn dev`Vite dev server端口 5174
- 类型检查:`yarn typecheck`
- 构建:`yarn build`(包含 `vue-tsc --noEmit`
- 预览:`yarn preview`
- 测试:`yarn test`Node 原生 test runner匹配 `src/**/*.test.ts`
说明:
- `tsconfig.json` 排除了 `src/**/*.test.ts`,测试文件如需 TS 类型支持,请在测试内保持自包含,或按项目既有方式处理
## 修改流程Agent 工作方式)
- 先定位:优先通过搜索/阅读定位真实调用链与使用方,再进行修改
- 小步提交:单次变更聚焦一个问题点;避免“顺手重构”影响范围
- 保守增依赖:不要新增第三方依赖或升级版本;确有必要时先征询确认并说明替代方案
- 不破坏接口:组件 props/事件/样式类名若被页面依赖,变更需兼容旧用法或同步修改所有调用点
- 变更必验证:完成代码修改后至少运行 `yarn typecheck`;涉及构建与运行差异时再运行 `yarn build` 与相关测试
- 开发计算时,有临时分支,需要提醒用户选择分支合并
## 限制条件
- 不要废话
- 不要缺失代码
- 不要出现伪需求
- 没有提及的代码不要修改
- 需要编译时就提醒用户手动确定
- 需要测试时就提醒用户手动执行
- 有滚动条的区域需要添加scrollbar-none [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden 类名