1.3 KiB
1.3 KiB
Index: Mall storefront app (apps/mall)
Guidelines: docs/frontend-guidelines.md.
| Path | Holds |
|---|---|
plugins/api.ts |
$api composition: mock base + per-domain live picks (LiveDomain, LIVE_PICKS, DEFAULT_LIVE_DOMAINS) |
mock/api.ts |
deterministic fixed-data adapter; versioned persisted state (STORAGE_KEY) |
mock/data.ts |
seed fixtures for the mock adapter |
nuxt.config.ts |
liveDomains runtime default (JSON array env NUXT_PUBLIC_LIVE_DOMAINS overrides) |
pages/index.vue |
home: banners/promos/quick links/category floors |
pages/search.vue, pages/goods/[id].vue |
catalog browsing; goods detail has reviews tab |
pages/cart.vue, pages/checkout/* |
cart and checkout (address → quote → submit → pay → success) |
pages/stores/* |
store directory + store detail |
pages/user/* |
buyer center: orders, aftersales, reviews, coupons, addresses, invoices, favorites |
pages/seckill.vue, collective.vue, integral.vue |
flash sale, group buying, points mall |
app.vue + components/shell/* |
header/footer shell |
composables/ |
session/cart stores, usePrice (currency conversion display) |
Remember: mall is the only app with a mock adapter; every new live domain
needs mock parity so NUXT_PUBLIC_LIVE_DOMAINS rollback keeps working.