惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Recent Announcements
Recent Announcements
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
B
Blog
T
The Blog of Author Tim Ferriss
J
Java Code Geeks
腾讯CDC
D
Docker
G
Google Developers Blog
D
DataBreaches.Net
雷峰网
雷峰网
Blog — PlanetScale
Blog — PlanetScale
S
SegmentFault 最新的问题
The Cloudflare Blog
有赞技术团队
有赞技术团队
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Stack Overflow Blog
Stack Overflow Blog
大猫的无限游戏
大猫的无限游戏
量子位
美团技术团队
aimingoo的专栏
aimingoo的专栏
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Engineering at Meta
Engineering at Meta
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

Tong-H

about fitness [ Tong-H ] 自媒体 [ Tong-H ] OpenClaw + 即梦自动运营小红书 [ Tong-H ] 202512 [ Tong-H ] nonsense [ Tong-H ] 基于 Playwright 的开发辅助工具-dev-playkit [ Tong-H ] 202509-202511 [ Tong-H ] CAT-TV [ Tong-H ] 202508/09 [ Tong-H ] AI 实践-DeepWiki-open 为项目生成 wiki 文档 [ Tong-H ] 在富文本编辑器中处理图文资源 [ Tong-H ] 2025-07 [ Tong-H ] how to stew meat [ Tong-H ] AI 实践-Memory Bank [ Tong-H ] Maxillofacial fracture [ Tong-H ] 2025-06/07 [ Tong-H ] ai [ Tong-H ] some day [ Tong-H ] day [ Tong-H ] 升级老项目的包依赖 [ Tong-H ] 2025-05 [ Tong-H ] 2025-04 [ Tong-H ] 2025-03 [ Tong-H ]
ai 实践-项目迁移 [ Tong-H ]
2025-07-20 · via Tong-H

背景

需要将页面从一个旧项目迁移到新项目,由于我对这两个项目都完全陌生,对功能也不熟悉,所以我的原则是:小心翼翼,确保安全稳定

这两个项目基于不同的技术栈:

  • 旧项目: React 15、Webpack、jQuery、内部 UI 框架
  • 新项目: React 16.8+、TypeScript、Redux、Vite、Axios、Ant Design

实现

  • 技术栈差异
    • 显而易见的 JS 与 TS 的区别
    • 类组件(带有生命周期方法)与函数组件(使用 Hooks)等的转换
    • 应重构或移除直接的 DOM 操作或 jQuery 的使用
  • UI 与样式差异
    • 两个项目都使用 SCSS
    • 旧项目使用通过 CDN 引入的 Bootstrap,而新项目使用现代框架 Ant Design
  • API 调用
    • 从 jQuery 迁移到 带有 API 服务封装的 Axios
  • 构建差异
    • 主要集中在代理(proxy)配置上
  • 项目结构
    • 必须遵循新项目的目录结构

我不能粘贴代码,但我可以分享一些经验供未来参考

  • 由于我对代码不熟悉,任何改动都意味着需要投入额外的验证时间,所以安全起见,就挨个页面迁移以及挨个验证。
  • 一旦完成一个页面的迁移,就可以引导 AI 模型学习这次迁移过程,并将所获经验应用到下一个页面的迁移中
  • 技术栈差异部分对 AI 来说相对简单。在分析了两个项目的代码库后,模块可以识别技术栈差距,生成转换计划并快速执行。
  • 依赖环境信息(如 location)的功能(如 URL 跳转或相对文件路径)必须反复检查——这些可能需要手动进行微调!
  • 在迁移过程中,大模型可能会出于优化目的在未通知用户的情况下删除或修改代码。这个需要注意,因为对于迁移本身,我希望它是安全稳定的,基本上就是将代码从一处搬到另一处,不要改变任何业务逻辑和功能。