# 项目长期记忆 ## 项目概述 - 微信小程序项目,使用 Taro + React + NutUI + TailwindCSS + SCSS - 项目名:南南佐顿门窗(门窗定制安装业务) - 品牌:网宿软件 ## 技术栈 - 框架:Taro (微信小程序) - UI:NutUI React Taro - 样式:TailwindCSS + SCSS - 语言:TypeScript ## 关键路径 - 首页入口:`src/pages/index/index.tsx` - 画册页:`src/pages/brochure/index.tsx`(当前为原生品牌画册展示页) - 分销商页面:`src/dealer/index.tsx` - 用户钱包:`src/user/wallet/wallet.tsx` - 客户管理:`src/dealer/customer/index` - 邀请码:`src/dealer/qrcode/index` - 导航工具:`src/utils/common.ts` (navTo函数) ## 首页结构 (2026-04-09 重大重构) - Header (吸顶搜索栏,深色渐变背景) - **Hero区域** (Banner + Grid 融合,圆角过渡) - **NoticeStrip** (自定义轻量公告条,黄色圆点+文字) - **BestSellers** (热销推荐 — 横向图文卡片,左图右信息) - **CatalogShowcase** (品牌画册 — 大面积渐变视觉卡片) - **TrustSection** (品质信任区 — 横向滑动渐变卡片:10年质保/15年经验/98%满意度) - **ContactSection** (联系我们 — 全宽深色沉浸式底部) - PopUpAd (弹窗广告) ### 设计特点 - 非豆腐块布局,差异化间距和视觉层次 - 页面背景:#f5f5f7 - 底部区域为深色渐变(#1e293b→#0f172a) - ~~CaseShowcase~~ (已注释隐藏) ## 图标使用注意事项 - NutUI图标库中不存在的图标: - `Right` → 使用 `ArrowRight` - `MapPin` → 使用 `Location` - `Wechat` → 使用 `Share` - `Users` → 使用 `People` - 所有图标必须从 `@nutui/icons-react-taro` 导入 - 构建前需验证图标名称是否在可用导出列表中 ## 字体大小规范 (2026-04-09 更新) - 微信小程序端按移动端标准设计,最小辅助文字 13-14px - 使用 TailwindCSS 工具类(text-xs/sm/base/lg/xl/2xl/3xl/4xl),不使用 SCSS font-size - 扩展了 tailwind.config.js:text-15(15px)、text-17(17px)、text-28(28px) - 标签/辅助:14px (text-sm) - 正文/描述:15-16px (text-15/text-base) - 小标题/按钮文字:16-17px (text-base/text-17) - 区块标题:20-24px (text-xl/text-2xl) - 强调数字(价格、数据):28-36px (text-28/text-4xl) - 所有图标必须从 `@nutui/icons-react-taro` 导入 ## Tailwind 小程序兼容性注意事项 - **禁止使用斜杠透明度简写**:`text-white/40`、`bg-black/50`、`border-gray/30` 等含 `/` 的写法在小程序不兼容,需要透明度时改用 SCSS `color: rgba(...)` 或在 tailwind.config.js 中定义语义色 - **禁止使用小数间距**:`mt-0.5`、`p-0.5`、`gap-0.5` 等含小数点的工具类在小程序不兼容,改用整数如 `mt-1`、`p-1` - **禁止使用任意值 `-[?]` 写法**:`text-[14px]`、`w-[100px]` 等方括号任意值写法在小程序不兼容,改用 Tailwind 预设类或在 tailwind.config.js 中扩展 - **颜色替代方案**:`text-white` 在小程序中可能不生效,改用 `text-gray`(如 `text-gray-100`~`text-gray-50` 等),深色背景上的白色文字优先用 `text-gray-100` - 当前代码中 ContactSection/TrustSection/CatalogShowcase 共有 9 处 `text-white/xx` 待修复 ## 画册页正式版 (2026-04-01) - 首页已实际挂载 `src/pages/index/BrochureEntry.tsx` 入口,位置在 Banner 下方。 - `src/pages/brochure/index.tsx` 当前为原生正式版结构:主营方案、核心优势、升级关键词、服务承诺、案例方向、服务流程、预约咨询信息。 - 画册页优先读取 `configWebsiteField` 返回的 `siteName`、`tel`、`address`、`workDay` 作为品牌与联系信息;无配置时使用兜底文案。 - 当前页面提供“拨打热线 / 复制地址 / 返回首页”三类转化操作,后续可继续接真实案例图、门店定位与预约表单。 ## 外部 H5/画册接入约定 (2026-04-01) - 小程序首页如需承载外部画册、易企秀、云展网等 H5,优先采用独立 `web-view` 页面承载,再从首页增加入口卡片或 banner 跳转。 - 该方案的前提是目标域名可在小程序后台配置为业务域名,且满足 HTTPS、备案等微信限制。 - 外部 `web-view` 页面应提供失败兜底界面(如重新加载、返回首页、管理员配置提示),不要只保留 toast 提示。 - 当前 `book.yunzhan365.com` 无法配合放置微信业务域名校验文件,因此不能作为小程序正式业务域名接入。 - 如果目标链接是第三方不可控域名,无法完成业务域名配置,则改为将内容转成图片、PDF 切图或原生页面在小程序内展示,不依赖直接外链打开;若仍想保留在线翻页体验,需迁移到自有可验证域名承载。