当前位置: 首页 > article >正文

uniapp 条件筛选

v3 版本

<template><view class="store flex "><view class="store_view"><view class="store_view_search flex jsb ac"><!-- <view class="store_view_search_select">全部</view> --><view class="store_view_search_inp flex ac"><input type="text" placeholder="请输入搜索商品" v-model="Data.search_t" @confirm="confirm" /></view></view><view class="screening flex jsb ac"><view class="screening_li flex jc ac" @click="choose_filter(1,'weigh')"><view class="screening_li_t" :class="Data.filter_index==1?'screening_li_tc':''">综合</view><!-- <view class="screening_li_img"><up-icon name="arrow-down" color="#333" size="12" @confirm="confirm"></up-icon></view> --></view><view class="screening_li flex jc ac" @click="choose_filter(2,'sales')"><view class="screening_li_t" :class="Data.filter_index==2?'screening_li_tc':''">销量</view><!-- asc=正序  最小的在前面,最大的在后面    desc=倒序  最大的在前面,最小的在最后 --><view class="screening_li_img"><!-- -fill --><up-icon name="arrow-up-fill" color="#8E97FE " size="8"v-if="Data.filter_index==2&&Data.filter_type=='asc'"></up-icon><up-icon name="arrow-up-fill" color="#333 " size="8" v-else></up-icon><up-icon name="arrow-down-fill" color="#8E97FE" size="8"v-if="Data.filter_index==2&&Data.filter_type=='desc'"></up-icon><up-icon name="arrow-down-fill" color="#333" size="8" v-else></up-icon></view></view><view class="screening_li  flex jc ac" @click="choose_filter(3,'price')"><view class="screening_li_t" :class="Data.filter_index==3?'screening_li_tc':''">价格</view><view class="screening_li_img"><up-icon name="arrow-up-fill" color="#8E97FE " size="8"v-if="Data.filter_index==3&&Data.filter_type=='asc'"></up-icon><up-icon name="arrow-up-fill" color="#333 " size="8" v-else></up-icon><up-icon name="arrow-down-fill" color="#8E97FE" size="8"v-if="Data.filter_index==3&&Data.filter_type=='desc'"></up-icon><up-icon name="arrow-down-fill" color="#333" size="8" v-else></up-icon></view></view><view class="screening_li  flex jc ac" @click="choose_filter(5,'createtime')"><view class="screening_li_t" :class="Data.filter_index==5?'screening_li_tc':''">新上架</view><!-- <view class="screening_li_img"><up-icon name="arrow-up-fill" color="#8E97FE " size="8"v-if="Data.filter_index==3&&Data.filter_type=='asc'"></up-icon><up-icon name="arrow-up-fill" color="#333 " size="8" v-else></up-icon><up-icon name="arrow-down-fill" color="#8E97FE" size="8"v-if="Data.filter_index==3&&Data.filter_type=='desc'"></up-icon><up-icon name="arrow-down-fill" color="#333" size="8" v-else></up-icon></view> --></view><!-- <view class="screening_li flex jc ac" @click="choose_filter(4,'')"><view class="screening_li_t" :class="Data.filter_index==4?'screening_li_tc':''">筛选</view><view class="screening_li_img flex jc ac"><image class="limg" :src="Data.imgurl + 'sxc.png'" mode="" v-if="Data.filter_index==4"></image><image class="limg" :src="Data.imgurl + 'sx.png'" mode="" v-else></image></view></view> --></view></view><scroll-view scroll-y="true" class="scrollview flex " @scrolltolower="onReachBottoms"><view class="scrollview_list" v-if="Data.list.length&&!Data.list_loading_show"><goodsItem :list="Data.list" :type="19"></goodsItem></view><Loading :type="'adaptive'" :show="Data.list_loading_show"></Loading><view v-if="Data.list.length==0&&!Data.list_loading_show"><nodata></nodata></view></scroll-view><Loading :show="Data.loading_show"></Loading></view>
</template><script setup>import Loading from "@/components/loading/loading.vue"import tabbar from "@/components/tabbar/tabbar.vue"import goodsItem from "@/components/goodsItem/goodsItem.vue"import nodata from "@/components/nodata/nodata.vue"import tools from "@/tools/index.js"import config from "@/tools/config.js"import customizeHead from "@/components/customizeHead/customizeHead.vue"import {reactive,computed} from 'vue';import {onLoad,onPageScroll,onPullDownRefresh,onShow,onReachBottom,onUnload,onHide,onShareAppMessage} from '@dcloudio/uni-app';const wxinfo = computed(() => tools.$public.public.wxCapsuleInfo())// 数据const Data = reactive({imgurl: config.serverimg,loading_show: true,list_loading_show: false,id: '',list: [],search_t: '',filter_index: 1, //筛选选中第几个filter_type: 'asc',filter_sort: 'weigh',})setTimeout(() => {Data.loading_show = false;}, 500)const Page = reactive({page: 1,limit: 10,last_page: 0})function onReachBottoms() {console.log('到底了')if (Page.last_page > Page.page) {Page.page++;getlist(1);} else {tools.$public.public.showToast('没有更多了~')}}onLoad((opt) => {// if (Data.search_t) {// 	getlist()// }})onShow(() => {// tools.$store('user').setuToExamine()})async function getlist(type) {let {code,msg,data} = await tools.$api.indexs.searchProduct({page: Page.page,search: Data.search_t,sort: Data.filter_sort,order: Data.filter_type,filter: {},op: {},type: 'goods'})if (code == 1) {if (type) {if (data.data && data.data.length) {Data.list.push(...data.data)}} else {Data.list = data.data;}Page.last_page = data.last_page;console.log(data, '商品列表')}setTimeout(() => {Data.list_loading_show = false;}, 500)}function choose_filter(index, sort) {// if(){// }Data.filter_sort = sort;if (Data.filter_index == index) {filter_type_choose()} else {Data.filter_index = index;Data.filter_type = ''filter_type_choose()}// if (Data.filter_index == 2 && Data.filter_type != 'asc' && Data.filter_type != 'desc')}function filter_type_choose() {if (Data.filter_index == 2) {if (Data.filter_index == 2 && Data.filter_type == 'asc') {Data.filter_type = 'desc'} else if (Data.filter_index == 2 && Data.filter_type == 'desc') {Data.filter_type = 'asc'} else {Data.filter_type = 'asc'}} else if (Data.filter_index == 3) {if (Data.filter_index == 3 && Data.filter_type == 'asc') {Data.filter_type = 'desc'} else if (Data.filter_index == 3 && Data.filter_type == 'desc') {Data.filter_type = 'asc'} else {Data.filter_type = 'asc'}} else if (Data.filter_index == 5) {Data.filter_type = 'desc'}if (statePage()) {getlist()}}function statePage() {Data.list = [];Page.page = 1;Page.limit = 10;Page.last_page = 0;Data.list_loading_show = true;return true;}function confirm(e) {if (e.detail.value) {Data.search_t = e.detail.value;if (statePage()) {getlist()}} else {Data.list = [];Page.page = 1;Page.limit = 10;Page.last_page = 0;}// console.log(e, '搜压缩')}const go = (page) => {tools.$public.public.navigateTo(page)}const islogin = () => {if (!uni.getStorageSync('token')) {// tools.$public.public.goLogin()return false} else {return true;}}
</script>
<style>page {background: #fff;}
</style>
<style lang="scss" scoped>.screening_li_tc {// font-size: 32rpx !important;color: #8E97FE !important;margin-right: 5rpx !important;line-height: 1;}.store {height: 100vh;position: relative;flex-direction: column;// justify-content: space-between;.backimg {width: 100%;height: 590rpx;position: fixed;top: 0;left: 0;z-index: -1;}.store_view {width: 100%;margin-top: 12rpx;// position: fixed;.store_view_search {// width: 690rpx;margin: auto;padding: 24rpx 20rpx;box-sizing: border-box;.store_view_search_select {font-weight: bold;font-size: 24rpx;color: #333333;}.store_view_search_inp {// width: 508rpx;width: 100%;height: 56rpx;background: rgba(239, 239, 239, 0.6);border-radius: 110rpx 110rpx 110rpx 110rpx;padding: 0 30rpx;box-sizing: border-box;font-weight: 400;font-size: 24rpx;color: #AAAAAA;input {width: 100%;}}}.screening {// width: 100%;width: 690rpx;margin: auto;padding: 24rpx 20rpx;box-sizing: border-box;.screening_li {// width: 33.3%;}.screening_li_t {font-size: 32rpx;color: #777777;margin-right: 5rpx;}.screening_li_img {}}}.store_view_plank {width: 100%;height: 96px;}.scrollview {overflow: hidden;flex-grow: 1 flex;padding-top: 24rpx;box-sizing: border-box;.scrollview_list {width: 690rpx;margin: auto;}}}
</style>

http://www.lryc.cn/news/2386665.html

相关文章:

  • pytorch问题汇总
  • 开发过的一个Coding项目
  • 数据仓库维度建模详细过程
  • python打卡day37
  • Redis 5.0.10 集群部署实战(3 主 3 从,三台服务器)
  • 各个网络协议的依赖关系
  • OSC协议简介、工作原理、特点、数据的接收和发送
  • 区块链可投会议CCF C--APSEC 2025 截止7.13 附录用率
  • 【数字图像处理】_笔记
  • 从0开始学习R语言--Day10--时间序列分析数据
  • 基于开源链动2+1模式AI智能名片S2B2C商城小程序的产品驱动型增长策略研究
  • 每日算法 -【Swift 算法】反转整数的陷阱与解法:Swift 中的 32 位整数处理技巧
  • 使用 OpenCV 实现“随机镜面墙”——多镜片密铺的哈哈镜效果
  • 鸿蒙仓颉开发语言实战教程:页面跳转和传参
  • 如何在Vue中实现延迟刷新列表:以Element UI的el-switch为例
  • 最新Spring Security实战教程(十六)微服务间安全通信 - JWT令牌传递与校验机制
  • MDM在智能健身设备管理中的技术应用分析
  • OSPF ABR汇总路由
  • 【五】Spring Cloud微服务开发:解决版本冲突全攻略
  • Spring Boot微服务架构(二):开发调试常见中文问题
  • Linux基础IO----动态库与静态库
  • LeetCode百题刷004(哈希表优化两数和问题)
  • 解析Java String.getBytes()编码与new String()解码的字符集转换机制
  • 从万有引力到深度学习,认识模型思维
  • 2022 年 9 月青少年软编等考 C 语言八级真题解析
  • FPGA通信之VGA与HDMI
  • Leetcode百题斩-二叉树
  • 修改 K8S Service 资源类型 NodePort 的端口范围
  • ACM Latex模板:合并添加作者和单位
  • 爬虫IP代理技术深度解析:场景、选型与实战应用