
どこかで、きっと、また。

Nuxt 3 SSR 日系電商平台,整合 Orval 自動生成型別安全 API Client 與完整前後台系統。
- ROLE
- 前端開發工程師
- CLIENT
- E-commerce
- YEAR
- 2025
- API
- 28+ Endpoints
- AUTH
- Google OAuth
- MODE
- SSR / CSR
Overview專案概述
前台使用 Nuxt 3、Vue 3、TypeScript 與 Composition API,透過 Orval 從 OpenAPI Specification 自動生成型別安全 API Client,整合商品、會員、購物車、收藏與訂單流程。
後台管理系統涵蓋商品管理(商品資訊、款式、庫存)、分類管理、品牌管理、訂單管理、優惠券管理、輪播圖管理、評論管理等模組。整合 Google OAuth 2.0 第三方登入,並實作 API 快取機制(useApiCache)減少重複請求。SEO 優化方面設定完整的 Meta Tag、Schema.org 結構化資料、useSeoMeta 動態生成等。
商品瀏覽與搜尋
支援多維度篩選、排序、分頁功能
購物車系統
即時新增、刪除、數量調整與總價計算
收藏清單
收藏商品、批次管理
訂單管理
建立訂單、訂單追蹤、歷史查詢
優惠券功能
套用折扣碼、驗證優惠條件
會員系統
Email 登入、Google OAuth 2.0 第三方登入
後台管理
商品、款式、分類、品牌、訂單、優惠券、輪播圖管理
Screens產品畫面
01/ 03
商品詳情Product Detail
My Contribution我負責的事
- 01採用 Orval 自動生成 API Client,實現 28+ 個端點的型別安全整合。
- 02使用 Composables 模式建立可重用狀態管理邏輯,確保 SSR/CSR 狀態一致性。
- 03整合 Google OAuth 2.0 第三方登入與 Token 持久化機制。
- 04實作 API 快取與去重機制(useApiCache),優化請求效能。
- 05設定 SEO Meta Tag、Schema.org 結構化資料與 useSeoMeta 動態優化。
- 06建立完整後台管理系統:商品、分類、訂單、優惠券、輪播圖等模組。
Problems & Decisions問題與決策
這個電商平台同時包含顧客購物介面與商品、訂單管理後台。會員、購物車、收藏與訂單會在多個頁面共用資料,因此開發重點是讓首屏與後續操作保持一致,並能跟上後端規格的更新。前端以 Nuxt 3、Vue 3 與 TypeScript 建置,使用 Orval 產生 API 呼叫方法,整合 28 個以上端點。
- 01
SSR/CSR 狀態一致性:透過 useState 確保伺服器端與客戶端狀態同步。Case 02
- 02
API 自動化生成:設定 Orval 配置,將 OpenAPI Spec 轉換為 TypeScript Client。Case 01
- 03
認證狀態管理:整合 Cookie、Token、Google OAuth,處理登入/登出/自動登入邏輯。
- 04
API 快取機制:設計 TTL 快取、請求去重、自動失效邏輯減少重複請求。Case 03
- 05
SEO 動態生成:針對商品詳情頁、分類頁等動態路由設定個別 Meta Tag。
CASE 01
Orval API Client 自動化生成
- Finding
- 電商前後台 API 端點多,手寫呼叫方法與型別時,規格更新容易漏改。
- Decision
- 用 Orval 從 OpenAPI 生成 TypeScript Client,讓 API 規格變更能反映到前端型別與呼叫方法。
- Result
- 完成 28 個以上端點串接,呼叫方法與 TypeScript 型別由 Orval 從 OpenAPI 規格產生。
CASE 02
SSR / CSR 狀態一致性與 Composables
- Finding
- 登入、購物車、收藏與訂單狀態同時出現在 SSR 首屏與 Client 互動流程,狀態來源分散會導致 hydration 與跨頁行為不穩。
- Decision
- 以 Composables 與 useState 收斂狀態來源,讓共享狀態在頁面、元件與 SSR / CSR 邊界間有一致的更新方式。
- Result
- 登入、購物車、收藏與訂單共用狀態來源,供伺服器渲染與瀏覽器互動使用。
CASE 03
請求快取與失效邊界
- Finding
- 商品、會員、購物車與收藏資料會被多個頁面重複讀取,若沒有快取與失效邊界,容易造成重複請求或顯示舊資料。
- Decision
- 建立 useApiCache 的 TTL、請求去重與失效邏輯,並和登入 / Token 狀態一起整理資料更新時機。
- Result
- 完成 useApiCache 的 TTL 快取、請求去重與失效邏輯,配合登入與 Token 狀態處理資料更新時機。

NEXT PROJECT下一個專案
企業 AI SDLC
Enterprise AI SDLC
參與大型金融企業的 AI SDLC 導入,以 COBOL 舊系統轉換為 Java 作為驗證場景,設計分階段工作流程、Skills 分工與固定案例評估。

