Name Last Update
.trae/documents Loading commit data...
build Loading commit data...
docs/agent Loading commit data...
scripts Loading commit data...
src Loading commit data...
typings Loading commit data...
.env Loading commit data...
.env.development Loading commit data...
.env.production Loading commit data...
.eslintrc-auto-import.json Loading commit data...
.eslintrc.js Loading commit data...
.gitignore Loading commit data...
.jshintrc Loading commit data...
.nvmrc Loading commit data...
AGENTS.md Loading commit data...
CHANGELOG.md Loading commit data...
CLAUDE.md Loading commit data...
DEPLOY-SHELL.md Loading commit data...
README.md Loading commit data...
components.d.ts Loading commit data...
debug-dialog.html Loading commit data...
deploy-config.sh Loading commit data...
deploy.sh Loading commit data...
index.html Loading commit data...
package-lock.json Loading commit data...
package.json Loading commit data...
prettier.config.js Loading commit data...
publish_dev.sh Loading commit data...
publish_prod.sh Loading commit data...
publish_prod_short.sh Loading commit data...
tsconfig.json Loading commit data...
tslint.json Loading commit data...
vite.config.js Loading commit data...
yarn.lock Loading commit data...

自定义表单

项目目标
- 支持多页表单的分页、校验与提交流程。

技术栈
- 构建:vite;包管理:pnpm;框架:vue3(setup);移动端组件库:vant。
- 路由:router;状态:pinia;样式:less + tailwindcss(若已引入)。

功能模块
- 表单分页:通过 `usePagination` 管理页签与可视字段。
- 表单校验:使用 `van-form` 的 `@submit` 与 `@failed` 事件统一处理。

迭代变更(2025-11-27)
- 下一页校验逻辑改为触发表单的 `onSubmit`,不再直接调用 `validateCurrentPage`。
- 新增 `navigate_next_pending` 标记与 `afterValidatedNavigateNext` 方法:
    - 当点击“下一页”时置标记,`onSubmit` 校验通过后执行翻页并调用 `resetValidation()` 重置后续页的错误显示状态。
    - `onFailed` 时清除该标记,避免误判后续提交动作。
- `index.vue` 在 `onSubmit` 顶部拦截“下一页意图”,短路真实提交,仅做翻页与状态重置。
- 保持分页最后一页提示与按钮颜色逻辑同步。
- 分页构建逻辑调整:当表单中不存在 `paginator` 控件时不启用分页,移除按固定大小(8个字段)分片的兜底逻辑,确保无分页控件时不显示分页组件。