一、整体背景和目标
委托方为从事雪茄等烟草制品跨境贸易的企业,原有销售渠道以线下为主,难以覆盖海外消费者的在线浏览与便捷下单需求,遂委托我方开发一套在线商城系统。本项目目标是为客户交付一个高性能、SEO 友好、支持多语言多货币的 B2C 电商平台,覆盖商品展示、在线下单、支付结算、订单管理、售后服务完整业务闭环,帮助客户通过搜索引擎获取自然流量、降低获客成本,提升海外用户的购买转化与复购率。二、软件功能与核心功能模块
系统按客户需求定制,包含以下核心模块:
商品中心:首页轮播推荐、分类导航、精选商品列表、商品列表筛选浏览、商品详情(规格选择、图文详情、相关推荐、收藏);
交易中心:购物车管理、订单结算、收货地址选择、优惠券抵扣、PayPal 国际支付对接及支付成功/取消回调处理;
会员中心:登录注册、订单管理(待付款、待发货、已发货、待评价、订单详情)、售后申请与售后进度查询、收藏夹、优惠券领取、地址簿、账号设置、系统消息;
内容运营:平台公告列表、营销活动列表、品牌故事与 FAQ 等内容详情页;
国际化能力:中英文多语言切换,美元/人民币等多币种价格展示与换算。
三、业务流程和功能路径描述
用户核心路径:首页浏览 → 商品列表/详情 → 加入购物车 → 结算页确认订单 → 调起支付 → 支付回调更新订单状态 → 会员中心查看订单/物流 → 评价或发起售后。系统采用前后端分离架构,前端通过统一封装的请求模块调用商品、订单、支付、会员等 RESTful 接口,页面在服务端完成数据获取与渲染,兼顾首屏性能与搜索引擎收录,满足客户对海外访问速度与搜索排名的要求。
一、整体架构与设计思路
系统采用前后端分离架构:后端提供商品、订单、支付、会员等 RESTful 接口,前端基于 Next.js 16(App Router)+ React 19 + TypeScript 开发。页面统一按双文件约定组织——page.tsx 作为服务端组件负责数据预取与 SEO 元数据生成,Client.tsx 作为客户端组件承载交互逻辑,兼顾服务端渲染的收录性能与客户端交互体验。全站封装统一的请求模块,自动附加登录令牌与语言头,并对需要鉴权的接口做前置校验;多语言采用类型化的翻译字典与自定义 Hook 实现,多币种通过 Context 结合后端汇率实时换算,保证全站价格展示一致。二、负责模块与交付结果
我负责前端整体搭建与全部页面开发,包括:页面路由与双文件渲染结构、统一请求与缓存封装、首页/商品列表/商品详情、购物车、结算与 PayPal 支付对接、会员中心(订单、售后、优惠券、收藏、地址簿、账号设置)、公告与活动内容页、中英文国际化与多币种切换,以及 sitemap、robots、Open Graph 等 SEO 配置。项目按客户需求完整交付,覆盖从浏览、下单、支付到售后的全流程,并通过客户验收上线运行。三、难点、坑与解决方案
SEO 与交互的平衡:纯客户端渲染不利于搜索引擎收录,采用服务端组件输出页面元数据与首屏内容,交互部分下沉到客户端组件,商品/内容详情页的标题描述从接口动态生成;
多语言文案管理:数百条文案分散在各页面,使用 TypeScript 定义翻译字典类型,键值缺失在编译期即可发现,避免线上漏翻;
多币种一致性:商品价格以美元为基准,由后端下发汇率,前端统一通过货币 Context 格式化展示,并在结算页明确提示最终以美元结算,避免汇率争议;
支付链路可靠性:对接 PayPal 时区分支付成功与取消两类回调页面,订单状态以后端回调为准,前端跳转仅作提示,防止用户伪造支付结果。