微信小程序实现左侧商品类型选择,右边显示商品列表的效果?

微信小程序居中、居右、居底和横向、纵向布局,文字在图片中间,网格布局 布局、居中、解决兼容问题。 阅读详情

在微信小程序中实现一个左侧为商品类型选择,右侧显示商品列表的效果,通常涉及到使用 scroll-view、view、swiper 等组件来布局和展示内容。下面是一个简单的实现思路和代码示例:

设计布局

我们可以使用一个 scroll-view 包裹左侧的商品类型列表,右侧用一个 scroll-view 或 view 来展示商品列表。为了实现联动效果,可以在点击商品类型时更新右侧的商品列表。

基本结构

<view class="container">
  <!-- 左侧商品类型选择 -->
  <scroll-view class="left-side" scroll-y="true" scroll-with-animation>
    <view class="item" wx:for="{
    
    {categories}}" wx:key="index" bindtap="onCategoryChange" data-category="{
    
    {item}}">
      {
  
  {item.name}}
    </view>
  </scroll-view>

  <!-- 右侧商品列表 -->
  <scroll-view class="right-side" scroll-y="true" scroll-with-animation>
    <view class="product" wx:for="{
    
    {products}}" wx:key="index">
      <image src="{
    
    {item.image}}" class="product-image" />
      <view class="product-info">
        <text>{
  
  {item.name}}</text>
        <text>{
  
  {item.price}}</text>
      </view>
    </view>
  </scroll-view>
</view>

页面样式

.container {
   
   
  display: flex;
}

.left-side {
   
   
  width: 200rpx;
  height: 100%;
  background-color: #f5f5f5;
}

.right-side {
   
   
  flex: 1;
  padding: 20rpx;
}

.item {
   
   
  padding: 10rpx;
  text-align: center;
  background-color: #ffffff;
  margin-bottom: 10rpx;
  border-radius: 5rpx;
}

.product {
   
   
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 20rpx;
}

.product-image {
   
   
  width: 150rpx;
  height: 150rpx;
}

.product-info {
   
   
  text-align: center;
}

页面逻辑

在 js 文件中,处理商品类型的点击事件,并根据选中的类型更新商品列表:

Page({
   
   
  data: {
   
   
    categories: [
      {
   
    id: 1, name: '电子产品' },
      {
   
    id: 2, name: '服装' },
      {
   
    id: 3, name: '家居' },
      // 其他类别...
    ],
    products: [],  // 商品列表
  },

  onLoad: function () {
   
   
    // 初始加载电子产品的商品列表
    this.loadProductsByCategory(1);
  },

  // 处理点击类别,更新商品列表
  onCategoryChange: function (e) {
   
   
    const category = e.currentTarget.dataset.category;
    this.loadProductsByCategory(category.id);
  },

  // 根据类别加载商品
  loadProductsByCategory: function (categoryId) {
   
   
    // 假设这里是从服务器获取数据,示例使用静态数据
    let productList = 
黑马优购项目详解 一、准备工作 首先将项目所用到的外网接口,添加到微信后台白名单中,以备项目完成后发布。 然后纵览整个项目,将项目划分为四个主体部分:首页,分类页,购物车页,个人中心页。 提前构思每个页面之间的联系以及每个页面所用到的关键技术。 了解项目所需外部资源,如iconfont图标,css样式等。 清楚都需要封装哪些公共组件。 查看每个页面所用到的请求接口,并在项目初始阶段封装api.js相关文件。 创建assets静态资源文件,放置所需静态资源。 . 阅读详情

相关推荐

微信小程序:多菜单栏设计效果

微信小程序:多菜单栏设计效果

weixin_46001736的博客 1895

微信小程序 - 最新详细实现 “左侧菜单,右侧内容“ 左右联动商品分类页面,左边是导航分类右侧是自定义内容,左侧分类菜单,右侧列表双向联动效果,左右二级联动,仿京东淘宝商城分类页面、美团外卖点餐界面!

微信小程序,vue2,vue3,左右联动菜单,商品分类页面,左分类右列表,小程序实现左侧菜单,右侧列表双向联动效果,侧边菜单和右边滚动条,电商项目,点击菜单子分类联动对应商品,分类左右联动,上拉加载以及下拉刷新,右侧列表双向联动,商品分类左右联动,scroll-view,锚点,点击左侧大类后侧列表跟着变跟着刷新,微信小程序实现菜单左右联动效果,左菜单 右边列表数据,左侧菜单,右侧列表双向联动效果,右侧商品滑动时,左侧分类导航栏的相应分类被选中,商城分类滚动列表锚点(左菜单右列表),美团外卖,京东商城,淘宝商

🏆 前端领域优质创作者 4894

侧边栏精准商品分类的微信小程序页面源码.zip

侧边栏精准商品分类的微信小程序页面源码.zip

达梦数据库与sharding-jdbc的深度适配实践

本文详细介绍了达梦数据库与sharding-jdbc的深度适配实践,包括驱动与依赖管理、核心适配实现、注册与配置等关键步骤。通过扩展shardingSphere的方式,成功实现了达梦数据库的分库分表功能,并提供了常见问题解决方案和性能优化建议,助力企业级应用高效处理海量数据。

weixin_30300225的博客 621

我用 Claude Code 给 Spring Boot 老项目做了一次代码 Review:查出 4 类隐藏问题

接手 Spring Boot 老项目时,真正麻烦的往往不是编译报错,而是分散在业务代码中的空指针、N+1 查询、异常吞没和并发隐患。本文记录一次使用 Claude Code 辅助代码 Review 的完整流程,并给出提示词、Java 示例、修改方案和人工复核方法。

海波的专栏 396

沈阳计算机研究所复试,沈阳计算所复试试题附答案.doc

沈阳计算所复试试题附答案目录数据结构1200612007220085200914操作系统16200616200718200818200919组成原理20200620200720200821200921经典算法22数据结构2006数据结构部分(共25分,第1题10分,第2题15分)在(下图)所示的有向图中:v1 v2v4 ...

weixin_42511053的博客 854

ADS 使用调整器动态调参教程(Tuning)

ADS动态调参教程

weixin_42845306的博客 1万+

2022北京高考数学压轴题21题:Python暴力枚举验证k≥7的5种反例

本文探讨了2022北京高考数学压轴题21题的编程解法,通过Python暴力枚举验证k≥7的5种反例。文章详细介绍了m-连续可表数列的定义、问题转化与约束条件,并提供了暴力枚举算法设计和优化技巧,帮助读者理解如何用编程思维解决数学问题。

weixin_33552698的博客 230

C++面向对象程序设计大作业:魔兽世界(三):开战

C++面向对象程序设计大作业:魔兽世界(三):开战问题描述问题分析代码 问题描述 问题来自于北京大学郭炜老师的C++慕课的大作业 魔兽世界的西面是红魔军的司令部,东面是蓝魔军的司令部。两个司令部之间是依次排列的若干城市,城市从西向东依次编号为1,2,3 … N ( N <= 20)。红魔军的司令部算作编号为0的城市,蓝魔军的司令部算作编号为N+1的城市。司令部有生命元,用于制造武士。 两军的司令部都会制造武士。武士一共有dragon 、ninja、iceman、lion、wolf 五种。每种武士都有

RedRum_1965的博客 4035

【提示学习代码】CoOp代码详读

CoOp是对CLIP的改进工作,主要是对prompt进行学习从而不用来手动设置prompt。自定义CLIP模型:上述两个模块结合而成的CLIP。文本编码器,接收文本的输入,并输出相应的编码表示。将图像和文本进行编码并计算它们之间的相似性。permute后变成了(4,2,3)Prompt学习器,用于学习生成提示。

weixin_51293984的博客 5813

在Ubuntu 22.04上从零搭建TrinityCore 3.3.5服务器:一份保姆级避坑指南

本文详细介绍了在Ubuntu 22.04系统上从零搭建TrinityCore 3.3.5服务器的完整流程,包括环境准备、源码编译、数据库配置、资源文件处理及性能调优等关键步骤。特别针对国内开发者和低配置用户优化,提供保姆级避坑指南,帮助用户高效搭建魔兽世界经典旧世版本私服。

weixin_33393017的博客 304

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

上一篇: Uniapp 实现顶部标签页切换功能?
下一篇: Vue3中如何实现单页应用(SPA)导航操作
nihui123
博客等级 码龄11年 7586粉丝 437原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

nihui123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值