Directory / Product Experience

Product Detail Page

หน้าที่รวมทุกความละเอียดอ่อนของสินค้าแต่ละรายการ จากการดึงข้อมูล SSR ที่รวดเร็ว ไปจนถึงประสบการณ์การเลือก Options ที่ลื่นไหลแบบ App-like Experience

Core Frontend Logic

7 Detail-Rich Modules

1. Dynamic Product SSR

ระบบดึงข้อมูลสินค้าแบบ Server-Side Rendering

Supabase (products table) + Params

Identity Lookup

ใช้ [id] จาก URL เพื่อดึงข้อมูลสินค้าเฉพาะตัว พร้อมทำ Join กับตาราง Shops เพื่อแสดงข้อมูลผู้ขาย

Data Sanitization

มีระบบ parseIfNeeded เพื่อจัดการข้อมูล JSONB ที่อาจถูกส่งกลับมาเป็น String ให้เป็น Object ที่พร้อมใช้งาน

Error Handling

หากไม่พบสินค้า (ID ผิดพลาด) ระบบจะทำ Redirect ไปหน้า 404 โดยอัตโนมัติ

2. Visual Media Engine

ระบบแกลเลอรีรูปภาพและปฏิสัมพันธ์

CSS Animations / JS Swipe Logic

Interactive Gallery

รองรับการ Swipe เปลี่ยนรูปภาพบน Mobile และการคลิก Thumbnail เพื่อเปลี่ยนรูปหลักพร้อมแอนิเมชัน Fade

Responsive Zoom

รูปภาพหลักใช้เทคนิค Object-contain พร้อมเอฟเฟกต์ Scale-on-hover เพื่อความคมชัดทุกรายละเอียดสินค้า

Metadata Links

ระบบดึงรูปจาก Variants อัตโนมัติเมื่อมีการเลือก Options เพื่อความแม่นยำในการนำเสนอ

3. Smart Pricing & Discount

ระบบคำนวณราคาและส่วนลดอัจฉริยะ

Pricing Metadata

Variant Pricing

คำนวณราคาเริ่มต้น (Base Price) จาก Variant ที่ถูกที่สุดเป็นค่าเริ่มต้นเมื่อโหลดหน้า

Discount Analysis

แสดงยอดเงินที่ประหยัดไป (Save Amount) และเปอร์เซ็นต์ส่วนลดเทียบกับราคาตั้งต้น (Compare Price)

Shipping Info

แสดงข้อมูลค่าจัดส่งคงที่ (Fixed Delivery Fee) กึ่งอัตโนมัติเพื่อประกอบการตัดสินใจ

4. Multi-Variant Selector

ระบบเลือกคุณสมบัติสินค้าขั้นสูง

Config Metadata (variants/options)

Visual Color Swatches

แสดงตัวเลือกสีเป็นวงกลมสีจริง (Hex Code) พร้อม Tooltip รายชื่อสี

Model Selection

ปุ่มเลือกโมเดล (Standard, Pro, etc.) ที่ปรับเปลี่ยนราคาและสต็อกทันทีที่คลิก

Composite Options

NEW: ระบบเลือก Option หลายระดับ (เช่น ความจุ + สี) พร้อมการบวกราคาส่วนเพิ่มแบบทับซ้อน

5. Cart & Stock Automation

การเชื่อมต่อกับตะกร้าสินค้าและระบบสต็อก

Nanostores (cartStore) / Local Storage

Stock Validation

ตรวจสอบสต็อกจริงก่อนกดยืนยัน หากสินค้าหมด ปุ่ม Add to Cart จะถูกปิดใช้งาน (Disabled)

Quantity Control

ระบบนับจำนวนสินค้า (Qty) พร้อมการจำกัดขั้นต่ำและขั้นสูงสุดตามสต็อกที่มีอยู่จริง

Mini-Cart Bridge

เมื่อกด Add to Cart ข้อมูลจะถูกส่งเข้า nanostores เพื่อเปิด CartDrawer ให้ผู้ใช้ดูสรุปทันที

6. Marketing & Technical Core

ส่วนข้อมูลเชิงลึกและการโน้มน้าวใจ

Marketing & TechSpecs Metadata

Iconic Benefits

ตารางสรุปจุดเด่นสินค้าพร้อมไอคอนและคำอธิบายเจาะลึก 3 หมวดหมู่

Hardware Specs

Grid ตารางข้อมูลทางเทคนิค (Tech Specs) ที่ดึงค่า Label/Value จากฐานข้อมูลมาจัดเรียงอัตโนมัติ

External Manual

ลิงก์ User Guide สำหรับดาวน์โหลดคู่มือการใช้งาน หรือดูวิดีโอสาธิตจากผู้ผลิต

7. User Review Ecosystem

ระบบความคิดเห็นและความไว้วางใจ

React (Reviews.jsx) / Supabase

Global Rating

การดึงคะแนนเฉลี่ยดาว (Stars) จากรีวิวทั้งหมดของสินค้านั้นๆ มาแสดงผลแบบ Real-time

Detailed Feedback

แสดงความคิดเห็นจากผู้ซื้อจริงพร้อมวันที่และสถานะยืนยันการซื้อ (Verified Purchase)

Filter Logic

ระบบคัดกรองรีวิวเพื่อให้ผู้ใช้เห็นความพึงพอใจโดยรวมก่อนการตัดสินใจซื้อ

# Complex States Overview

Variant Switching Logic

เมื่อเลือก Variant ใหม่ JavaScript จะอัปเดต 4 ส่วนทันที:
1. ราคาสุทธิบนหน้าจอ
2. ราคาเปรียบเทียบ (Compare Price)
3. รูปภาพสินค้าหลัก
4. สถานะความสว่างของปุ่ม Add to Cart ตามสต็อก

Composite Price Mapping

สำหรับระบบ Composite ตัวเลือกย่อยแต่ละตัวจะมี "Price Addon" เฉพาะตน ลอจิกจะบวกสะสม (Addition) จาก Base Price เพื่อแสดงยอดรวมที่ถูกต้องที่สุดก่อนเข้าตะกร้า