Files
vmall/docs/code_index/mall.md
T

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.