
mpvue小程序中防商品联动分类下滑列表
发布日期:2021-05-10 11:39:28
浏览次数:24
分类:原创文章
本文共 6649 字,大约阅读时间需要 22 分钟。
要在mpvue中实现如下的分类的页面:
代码如下(微信原生小程序的语法已改成mpvue的,图片设计的静态资源图片,你们自己去找需要的,这个只是参考):
pages/toolbar/fenlei/index.vue
<template> <view class="container"> <scroll-view class='nav_left' scroll-y='true'> <block v-for="(item,index) in cateItems" :key="index"> <!-- <view :class="{nav_left_items curNav==item.cate_id?'active':''}" @click="switchRightTab" :data-index='index' :data-id="item.cate_id">{ {item.cate_name}}</view> --> <view class="nav_left_items" :class="curNav==item.cate_id ? 'active':''" @click="switchRightTab" :data-index='index' :data-id="item.cate_id">{ {item.cate_name}}</view> </block> </scroll-view> <scroll-view class="nav_right" scroll-y="true"> <view v-if="cateItems[curIndex].children.length>0"> <block v-for="(item,index) in cateItems[curIndex].children" :key="index"> <view class="nav_right_items"> <navigator url="#"> <image :src="item.image"></image> <text>{ {item.name}}</text> </navigator> </view> </block> </view> <view class="nocate" wx:else> <image src="../../../static/tabrIcon/nav-appmgt-active.png"></image> <text>该分类暂无数据</text> </view> </scroll-view> </view></template><script>// import nodata from '../../../components/owner/nodata.vue';// import divider from '../../../components/owner/divider.vue';// import echarts from '../../../components/echarts/echarts.simple.min.js';// import mpvueEcharts from 'mpvue-echarts';export default { components: { // nodata, // divider, // mpvueEcharts }, data() { return { cateItems:[ { cate_id:1, cate_name:'洗护', children: [ { child_id: 1, name: '洁面皂', image: "../../../static/images/lefttwo.png" }, { child_id: 2, name: '卸妆', image: "../../../static/images/icon4.png" }, { child_id: 3, name: '洗发水', image: "../../../static/images/icon4.png" }, { child_id: 4, name: '保湿水', image: "../../../static/images/icon4.png" }, { child_id: 5, name: '粉底液', image: "../../../static/images/icon4.png" },{ child_id: 6, name: '小蓝瓶', image: "../../../static/images/icon4.png" }, { child_id: 7, name: '卸妆', image: "../../../static/images/icon4.png" }, { child_id: 8, name: '洁面皂', image: "../../../static/images/biandianzhan.png" }, { child_id: 9, name: '香皂', image: "../../../static/images/biandianzhan.png" }, { child_id: 10, name: '肥皂', image: "../../../static/images/biandianzhan.png" }, { child_id: 11, name: '洗洁精', image: "../../../static/images/biandianzhan.png" }, { child_id: 12, name: '洁面皂', image: "../../../static/images/biandianzhan.png" }, { child_id: 13, name: '香皂', image: "../../../static/images/biandianzhan.png" }, { child_id: 14, name: '肥皂', image: "../../../static/images/biandianzhan.png" }, { child_id: 15, name: '洗洁精', image: "../../../static/images/biandianzhan.png" }, { child_id: 16, name: '洁面皂', image: "../../../static/images/biandianzhan.png" }, { child_id: 17, name: '香皂', image: "../../../static/images/biandianzhan.png" }, { child_id: 18, name: '肥皂', image: "../../../static/images/biandianzhan.png" }, { child_id: 19, name: '洗洁精', image: "../../../static/images/biandianzhan.png" } ] }, { cate_id:2, cate_name:'生鲜' }, { cate_id:3, cate_name:'食品' }, { cate_id: 4, cate_name: '女装' }, { cate_id: 5, cate_name: '百货' }, { cate_id: 6, cate_name: '母婴' }, { cate_id: 7, cate_name: '手机' }, { cate_id: 8, cate_name: '鞋靴' }, { cate_id: 9, cate_name: '运动' }, { cate_id: 10, cate_name: '美家' }, { cate_id: 11, cate_name: '男装' }, { cate_id: 12, cate_name: '水果' }, { cate_id: 13, cate_name: '电子', children: [ { child_id: 1, name: '洁面皂', image: "../../../static/images/biandianzhan.png" }, ] } ], curNav:1, curIndex:0 }; }, methods: { switchRightTab(e){ let id = e.target.dataset.id,index=e.target.dataset.index; this.curNav = id; this.curIndex = index; }, }};</script><style src="../../../global/global.css"></style><style src="../fenlei/fenlei.css"></style>
pages/toolbar/fenlei/fenlei.css:
.container{ position:fixed; width:100%; height:100%; background-color:#FFF;}.nav_left{ width:25%; height:100%; background:#F2F2F2; text-align:center; position:absolute; top:0; left:0;}.nav_left .nav_left_items{ height:100rpx; line-height:100rpx; font-size:28rpx;}.nav_left .nav_left_items.active{ position:relative; background:#FFF; color:#FF5000;}.nav_left .nav_left_items.active::before{ display: inline-block; width:6rpx; height:60rpx; background:#FE5723; content:''; position:absolute; top:20rpx; left:0;}.nav_right{ position:absolute; top:0; right:0; width:75%; height:100%;} .nav_right .nav_right_items{ float: left; width: 33.33%; text-align: center; padding:30rpx 0;} .nav_right .nav_right_items image{ width: 120rpx; height: 120rpx; } .nav_right .nav_right_items text{ display: block; margin-top: 20rpx; font-size: 28rpx; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } .nocate{ padding:100rpx; text-align: center; } .nocate image{ width:70rpx; height:70rpx;}.nocate text{ font-size:28rpx; display:block; color:#BBB;}/*隐藏滚动条*/::-webkit-scrollbar{ width: 0; height: 0; color: transparent;}
说明:
也许你们看的是另外一篇,我是参考那偏原生的语法,改成mpvue需要的语法,基本就是vue的语法: 如果:wx:for 改成 v-for 、wx:if 改成 v-if、this.setData({ curNav:id, curIndex:index })改成 this.curNav = id;this.curIndex = index
参考:
[1].
发表评论
最新留言
表示我来过!
[***.240.166.169]2025年04月08日 07时20分02秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Python IO编程
2021-05-09
CSS入门总结
2021-05-09
使用 TortoiseGit 时,报 Access denied 错误
2021-05-09
基于 HTML5 WebGL 的污水处理厂泵站自控系统
2021-05-09
java _this关键字的用法
2021-05-09
代码荣辱观-以运用风格为荣,以随意编码为耻
2021-05-09
SpringBoot启动原理
2021-05-09
[系列] Go gRPC 调试工具
2021-05-09
django-表单之模型表单渲染(六)
2021-05-09
c++之程序流程控制
2021-05-09
一位年轻而优秀的.NET开发者的成长点滴
2021-05-09
如何使用ABP进行软件开发(1) 基础概览
2021-05-09
第三周总结
2021-05-09
Spark学习之SparkStreaming
2021-05-09
AlwaysOn配置时在连接步骤时报错(35250)
2021-05-09
排序算法之总结
2021-05-09
微软云Linux服务器 Mysql、tomcat远程连接错误解决办法
2021-05-09
Java基础知识回顾之六 ----- IO流
2021-05-09
Python数据分析(二): Numpy技巧 (2/4)
2021-05-09
09 . Python3之常用模块
2021-05-09