yankun 302aa6ce16 买家 10 ay önce
..
components 302aa6ce16 买家 10 ay önce
README.md 302aa6ce16 买家 10 ay önce
detail.vue 302aa6ce16 买家 10 ay önce
index.vue 302aa6ce16 买家 10 ay önce

README.md

买家端店铺功能说明

功能概述

为买家端添加了店铺功能,包括店铺列表、搜索、店铺详情等核心功能。

功能特性

1. 店铺列表页面 (pagesBuyer/shop/index.vue)

  • 9个店铺展示: 展示9个不同类别的店铺
  • 搜索功能: 支持按店铺名称、描述、标签搜索
  • 店铺信息: 显示店铺头像、名称、描述、评分、销量、距离
  • 营业状态: 显示店铺是否营业中
  • 标签系统: 显示店铺特色标签
  • 点击跳转: 点击店铺进入店铺详情页

2. 店铺详情页面 (pagesBuyer/shop/detail.vue)

  • 店铺头部: 显示店铺基本信息
  • 收藏功能: 可以收藏/取消收藏店铺
  • 功能按钮: 联系店铺、查看位置、分享店铺
  • 商品分类: 显示店铺商品分类
  • 商品列表: 展示店铺热销商品
  • 商品详情: 点击商品可查看详情

3. 底部导航更新

  • 新增店铺选项: 在买家端导航中添加店铺选项
  • 图标支持: 使用专门的店铺图标
  • 智能跳转: 根据用户类型智能跳转

页面结构

pagesBuyer/shop/
├── index.vue      # 店铺列表页面
├── detail.vue     # 店铺详情页面
└── README.md      # 说明文档

店铺数据示例

店铺列表数据

const shops = ref([
  {
    id: 1,
    name: "时尚潮流店",
    description: "专注时尚潮流服饰,品质保证",
    avatar: "/static/shop/shop1.png",
    rating: 4.8,
    sales: 1234,
    distance: "1.2km",
    status: "online",
    tags: ["时尚", "潮流", "品质"]
  },
  // ... 更多店铺数据
]);

店铺详情数据

const shopInfo = ref({
  id: 1,
  name: "时尚潮流店",
  description: "专注时尚潮流服饰,品质保证,为您提供最优质的商品和服务",
  avatar: "/static/shop/shop1.png",
  rating: 4.8,
  sales: 1234,
  distance: "1.2km",
  status: "online",
  tags: ["时尚", "潮流", "品质", "正品"]
});

搜索功能

搜索范围

  • 店铺名称
  • 店铺描述
  • 店铺标签

搜索实现

const filteredShops = computed(() => {
  if (!searchValue.value.trim()) {
    return shops.value;
  }
  
  const keyword = searchValue.value.toLowerCase();
  return shops.value.filter(shop => 
    shop.name.toLowerCase().includes(keyword) ||
    shop.description.toLowerCase().includes(keyword) ||
    shop.tags.some(tag => tag.toLowerCase().includes(keyword))
  );
});

导航配置

买家端导航更新

const buyerNavList = ref([
  {
    name: "home",
    title: "tabbar.首页",
    img: home,
    img_active: home_active,
    num: 0,
  },
  {
    name: "shop",
    title: "tabbar.店铺",
    img: shop,
    img_active: shop_active,
    num: 0,
  },
  {
    name: "cart",
    title: "tabbar.购物车",
    img: cart,
    img_active: cart_active,
    num: cartNum.value,
  },
  {
    name: "profile",
    title: "tabbar.我的",
    img: user,
    img_active: user_active,
    num: 0,
  },
]);

路由配置

pages.json 配置

{
  "path": "pagesBuyer/shop/index"
},
{
  "path": "pagesBuyer/shop/detail"
}

页面跳转

跳转到店铺详情

const toShopDetail = (shop) => {
  uni.navigateTo({
    url: `/pagesBuyer/shop/detail?id=${shop.id}&name=${shop.name}`
  });
};

跳转到商品详情

const toProductDetail = (product) => {
  uni.navigateTo({
    url: `/pagesBuyer/shop/product?id=${product.id}`
  });
};

样式特点

1. 响应式设计

  • 使用 Grid 布局展示商品
  • 支持不同屏幕尺寸
  • 移动端优化

2. 统一风格

  • 遵循项目设计规范
  • 使用项目颜色变量
  • 保持UI一致性

3. 交互反馈

  • 点击效果
  • 状态变化
  • 加载状态

扩展功能

1. 店铺收藏

  • 支持收藏/取消收藏
  • 收藏状态持久化
  • 收藏列表管理

2. 店铺评价

  • 用户评价系统
  • 评分统计
  • 评价展示

3. 店铺活动

  • 优惠活动展示
  • 促销信息
  • 活动倒计时

注意事项

  1. 图片资源: 需要准备店铺头像、商品图片等资源
  2. 数据接口: 实际使用时需要对接后端API
  3. 权限控制: 某些功能可能需要登录权限
  4. 性能优化: 大量数据时考虑分页加载
  5. 错误处理: 添加网络错误、数据异常等处理

技术栈

  • Vue 3 Composition API
  • uni-app 框架
  • Less 样式预处理器
  • Pinia 状态管理
  • 响应式设计