## Docker 发布配置 - 新增:`site/Dockerfile` - 多阶段构建配置,基于 node:20-alpine,优化镜像体积 - 新增:`site/.dockerignore` - Docker 构建忽略文件,排除不必要的文件 - 新增:`site/docker-compose.yml` - Docker Compose 配置文件,便于本地和服务器部署 - 新增:`DOCKER.md` - Docker 发布完整指南,包含构建、运行、发布到 Docker Hub 等步骤 - 更新:`site/next.config.mjs` - 添加 `output: 'standalone'` 配置,支持独立输出模式,优化 Docker 部署 - 修复:`site/Dockerfile` - 添加复制 `data` 目录到容器,修复运行时找不到 JSON 数据文件的错误(ENOENT: no such file or directory) ## 移动端导航修复 - 修复:`site/components/MainNav.tsx` - 添加移动端汉堡菜单,解决手机端导航菜单不显示的问题 - 将组件改为客户端组件("use client"),使用 useState 管理菜单状态 - 添加移动端菜单按钮(汉堡图标),点击展开/收起菜单 - 移动端菜单包含搜索框和所有导航项 - PC 端保持原有横向导航布局不变 ## 功能更新 - About 轮播统一比例:`BannerCarousel` 支持 `aspectClass`,在 About 页固定为 `aspect-[16/6]`,保证三张图一致大小(object-cover 填充)。 - 轮播增强:`BannerCarousel` 新增左右切换按钮(Prev/Next),悬浮可见;保持自动轮播与指示点。 - 导航新增:在 `mainnav.json` 与 `data/en/mainnav.json` 首位添加“公司介绍/About”,链接 `/about`。 - 新增页面:`app/[locale]/about/page.tsx`,上方轮播(手机/家电/智能),下方“公司产品介绍”段落。 - 新增数据:`data/about.json` 与 `data/en/about.json`。 - 修复:横幅链接指向不存在的 `flagship`,改为现有产品 `p1`(中/英 `banners.json`)。 - 本地化:产品详情页根据 `locale` 切换文案(未找到/返回/首页/加入购物车)。 - 视觉优化:`ProductCard` 提升观感(白底圆角阴影、居中等比展示、标题/描述固定高度、悬浮上浮)。 - 布局优化:`ProductGrid` 增大断点间距与列数回落,频道页头部增加标题与返回入口。 - 修复:本地化引入后样式与布局错乱的根因(双层布局)。 - 根级 `app/layout.tsx` 改为只渲染 `{children}`,不再包含 Header/Footer。 - 根首页 `app/page.tsx` 改为重定向到 `/zh-CN`,所有实际页面只使用 `app/[locale]/layout.tsx` 的单一布局。 - 多语言:取消 Next 内置 i18n 配置,统一使用 `app/[locale]/*` 路由前缀,避免与布局冲突。 - 链接前缀:为组件增加 `basePath/locale` 支持,确保所有链接都指向带语言前缀的路径。 - 更新 `MainNav`、`BannerCarousel`、`PromoGrid`、`ProductCard`、`ProductGrid`、`FloorSection` 接口并在页面传入 `basePath`。 - 新增本地化路由:`app/[locale]/layout.tsx`、`app/[locale]/page.tsx`、`app/[locale]/channel/[slug]/page.tsx`、`app/[locale]/product/[id]/page.tsx`。 - 数据按语言读取:`lib/data.ts` 增加 locale 感知,优先读取 `data//*.json`,否则回退 `data/*.json`。 - 英文示例数据:`data/en/{mainnav,banners,promos,products,services}.json`。 - 语言开关:新增 `components/LangSwitch.tsx`,在 `MainNav` 右侧切换中英文(在路径前添加/切换 `/en` 或 `/zh-CN`)。 - 新增:频道页 `app/channel/[slug]/page.tsx`(从 `data/products.json` 匹配 floor,显示横幅与产品网格),避免手机/家电等频道 404。 - 新增:产品详情页 `app/product/[id]/page.tsx`(从数据集中查找产品,含面包屑与占位购买按钮),避免产品链接 404。 - 新增:`app/not-found.tsx` 全局 404 友好页。 - 新增:批量 SVG 占位图到 `site/public/`(hero/floors/products/promos/icons),并将 `data/*.json` 的图片扩展名改为 `.svg` 对应路径,确保本地即刻有图可用。 - 修复:`site/public/products/a2.svg` 的 `xmlns` 写法错误,改为 `http://www.w3.org/2000/svg`,解决“净化器”图片不显示。 ## 2025-10-30 - 新增:项目任务清单(初始化 10 项),当前进行中:建立 data/ 与类型定义。 - 新增:`site/types.ts` 类型定义(NavItem/Banner/Promo/Product/Floor/ServiceLink)。 - 新增:`site/data/` 示例数据文件(`nav.json`、`banners.json`、`products.json`)。 - 新增:基础 UI 组件 `site/components/TopBar.tsx`、`MainNav.tsx`、`Footer.tsx`;组件以 props 驱动,后续由页面注入数据。 - 变更:取消 TopBar 登录/注册入口,仅保留帮助中心链接。 - 新增:数据读取工具 `site/lib/data.ts`(从 `data/*.json` 读取)。 - 新增:首页所需组件 `BannerCarousel`、`PromoGrid`、`ProductCard`、`ProductGrid`、`FloorSection`、`ServiceLinks`。 - 新增:`app/layout.tsx`、`app/page.tsx`、`app/globals.css`,完成首页骨架接线(TopBar→MainNav→Hero→Promos→楼层→服务→Footer)。 - 新增与配置:Next.js + TypeScript + Tailwind 环境 - 更新 `site/package.json`:添加脚本(dev/build/start)与依赖(next/react/react-dom)及 devDependencies(typescript/@types/node/@types/react/tailwindcss/postcss/autoprefixer 等)。 - 新增 `site/tsconfig.json`:启用严格模式、ES2020、Bundler 解析、引入 Node/React 类型。 - 新增 `site/next.config.ts`、`site/postcss.config.mjs`、`site/tailwind.config.ts`,Tailwind 扫描 `app/` `components/`。 - 将 Next.js 配置从 `next.config.ts` 改为 `next.config.mjs`(Next 14 不支持 `.ts` 配置)。 - 移除 TopBar:删除 `site/components/TopBar.tsx` 与 `site/data/topbar.json`,`app/layout.tsx` 不再引用;`site/lib/data.ts` 移除 `getTopbarNav`。 - Windows 终端设 UTF-8(`chcp 65001` + `$OutputEncoding`)后执行 `yarn install` 和依赖安装以避免中文乱码。 - 为避免 Tailwind v4 与现有配置不兼容,暂将 Tailwind 固定为 3.4.10,并将 React/Next 与类型依赖固定到兼容版本。 变更原因:为实现基于 Next.js + Tailwind 的官网首页布局,先行搭建数据与类型骨架,保证后续内容可替换。 - 新增:`PLAN.md` 实施计划与步骤(目标/范围/架构/步骤/部署/替换指南/里程碑)。