一、问题(本轮实测)
`draw-ui` 与 `oil-motion` 目录里**各自带一个内嵌 `.git`** ⇒ 上一次提交把它们记成了 **gitlink(子模块指针)**
⇒ 仓库里只存了一个不属于任何远端的 commit id,**别人克隆下来这两份是空的** ✗(`git status` 显示 ` m draw-ui` / ` m oil-motion` = 子模块内容有改动)。
二、处置(可回退)
· 把两处的 `.git` **挪走**(⛔ 不是删除)⇒ `归档/内嵌git-20261008/{draw-ui,oil-motion}.git`;
· `git rm --cached` 掉那两个 gitlink,再 `git add` 两个目录 ⇒ **按正常文件入库**(内容才真的进仓库)。
三、副作用(如实记)
挪走 `.git` 后,这两个技能**不能再原地 `git pull` 取上游更新**(要更新得重新拉一份覆盖);
如需恢复其本地仓库,把 `归档/内嵌git-20261008/` 里的 `.git` 挪回原处即可。
32 lines
1.9 KiB
Markdown
32 lines
1.9 KiB
Markdown
# 现有软件实现
|
|
|
|
## 接入项目
|
|
|
|
沿用已有设计说明,先按 [测量与校准](calibration.md) 确定参考基线,再检查目标路由、组件树、技术栈、样式系统与项目规范。默认在现有架构内实现;用户明确要求独立原型或没有可用项目时,使用 [HTML 实现](html-reconstruction.md)。
|
|
|
|
按实际差异选择最小改动:现有组件能够表达时调整布局和设计变量;重复结构或状态需要变化时修改组件;图片缺失时进入 [素材流程](reference-assets.md)。不因截图复杂就重建整套组件库。
|
|
|
|
## 实现约束
|
|
|
|
- 沿用项目的数据加载、路由、状态管理、样式和测试方式;TypeScript 项目保持类型完整。
|
|
- 用业务含义命名组件,区分可复用展示内容与交互状态;普通图标使用项目已有图标库。
|
|
- 保留语义按钮与链接、输入标签、键盘焦点、对比度和必要的减少动态效果支持。
|
|
- 覆盖真实内容、加载、空结果、错误及关键操作;长文本、列表增长与窄屏不能破坏布局。
|
|
- 素材按项目已有资源方式导入,容器明确尺寸、宽高比、裁切与响应式行为。装饰图使用空 alt;承载独立信息的图片提供准确替代文本。
|
|
|
|
例如,项目支持静态资源导入时:
|
|
|
|
```tsx
|
|
import heroUrl from "@/assets/hero.png";
|
|
|
|
export function HeroIllustration() {
|
|
return <img className="heroIllustration" src={heroUrl} alt="" />;
|
|
}
|
|
```
|
|
|
|
## 验证与交付
|
|
|
|
截图采集、偏差比较和跨轮修正统一使用校准流程,不另建截图循环。运行项目已有且与改动相关的类型检查、lint、测试和构建;静态检查不能代替实际操作。
|
|
|
|
交付目标路由与修改文件、已验证的操作及视口、剩余视觉差异和检查失败原因。页面应属于项目正常组件树,不能依靠整张截图背景或仅有默认状态的控件通过验收。
|