diff --git a/scripts/Web转小程序并上传-提示词.md b/scripts/Web转小程序并上传-提示词.md index 00d389c1..d1d21f72 100644 --- a/scripts/Web转小程序并上传-提示词.md +++ b/scripts/Web转小程序并上传-提示词.md @@ -6,8 +6,8 @@ ## 一、你的任务(当被 @ 本文件时) -1. **转换**:将当前项目中的 **Web 端(Next.js)** 页面与功能,**完整、一致**地转为微信小程序代码,输出到 **`miniprogram/`** 目录。保持与现有小程序规范一致(WXML/WXSS/JS、app.json、project.config.json)。 -2. **检查**:转换完成后,自检 `miniprogram/` 是否可运行(必要文件、路由、API 调用、样式与交互一致)。 +1. **转换**:将当前项目中的 **Web 端(Next.js)** 页面与功能,**完整、一致**地转为微信小程序代码,输出到 **`miniprogram/`** 目录。**转换必须完整,样式、按钮、布局、交互等不得有任何丢失**(见下方「完整性要求」)。 +2. **检查**:转换完成后,自检 `miniprogram/` 是否可运行,并逐页对照 Web 端确认无遗漏(必要文件、路由、API、样式、按钮、链接、交互一致)。 3. **上传**:提示用户在项目根目录执行 **`python scripts/autosysc-weixin.py`**,或由你代为执行该命令,完成代码上传到微信公众平台。 若用户只要求「转换」或只要求「上传」,则只执行对应步骤;若用户说「完整流程」或 @ 本文件且无特别说明,则执行上述三步。 @@ -40,9 +40,20 @@ ## 三、转换规则(Web → 小程序) +### 完整性要求(零丢失) + +- **样式**:颜色、字体、字号、行高、间距(margin/padding)、圆角、阴影、背景、边框等必须与 Web 一致,在 WXSS 中完整实现,不得省略或简化。 +- **按钮与可点击元素**:每个按钮、链接、可点击区域都要保留,文案、图标、点击跳转/弹窗/提交等行为与 Web 一致;禁用态、加载态等状态也要体现。 +- **布局与结构**:区块划分、顺序、折叠/展开、列表/卡片结构等与 Web 一致,不得漏掉任何一块内容或模块。 +- **图片与图标**:Web 中出现的图片、图标、占位图都要在小程序侧存在并正确引用,路径可用 `miniprogram/images/` 或 assets。 +- **表单与输入**:输入框、选择器、校验、提交逻辑与 Web 一致,不丢字段、不丢校验。 +- **若 Web 某块在小程序无法 100% 实现**(如复杂 CSS 或 DOM API),用最接近的实现并在此处加注释说明差异,不得直接删掉整块内容。 + +### 组件与语法 + 1. **组件与语法** - React/JSX → WXML(`wx:if`、`wx:for`、`bindtap` 等)。 - - Tailwind/CSS 模块 → WXSS(可保留 class 名,样式写到 `.wxss` 或页面/组件内)。 + - Tailwind/CSS 模块 → WXSS(**逐条对照 Web 样式**,可保留 class 名,样式写到 `.wxss` 或页面/组件内,确保视觉效果一致)。 - `useState`/`useEffect` → 小程序 Page 的 `data`、`onLoad`、`onShow` 等。 - 路由:`useRouter`/`Link` → `wx.navigateTo`、`wx.switchTab`(tab 页用 switchTab)。 2. **页面与路由** @@ -73,6 +84,7 @@ - [ ] 无语法错误:WXML 闭合、WXSS 合法、JS 中 Page() 注册正确。 - [ ] 接口 baseURL 为线上或配置项,非 localhost(除非仅本地调试)。 - [ ] tabBar 与导航与 Web 端一级入口一致(首页、目录、找伙伴、我的)。 +- [ ] **完整性**:逐页对照 Web,确认样式(颜色、间距、字体等)、按钮、链接、图片、表单、列表/卡片等无遗漏;若有无法 1:1 实现处,已用最接近方式实现并注释说明。 ---