商品改为产品

This commit is contained in:
yyy 2024-12-02 09:01:12 +08:00
parent 334d5d57a9
commit 0113bba6c0
7 changed files with 1335 additions and 1339 deletions

View File

@ -373,7 +373,7 @@
// if(selectList.value.length <= 0){ // if(selectList.value.length <= 0){
// uni.showToast({ // uni.showToast({
// icon: 'error', // icon: 'error',
// title: '' // title: ''
// }) // })
// return // return
@ -384,7 +384,7 @@
// //
const onSubmit = async () => { const onSubmit = async () => {
// //
let newArr = [] let newArr = []
selectList.value.forEach((item, index) => { selectList.value.forEach((item, index) => {
let obj = {} let obj = {}

View File

@ -144,7 +144,7 @@
name: '跟进' name: '跟进'
}, },
{ {
name: '意向品' name: '意向品'
}, },
{ {
name: '客户信息', name: '客户信息',

View File

@ -1,180 +1,180 @@
<template> <template>
<uv-navbar <uv-navbar
:fixed="false" :fixed="false"
@leftClick="$onClickLeft" @leftClick="$onClickLeft"
bgColor="#09b4f1" bgColor="#09b4f1"
> >
<template v-slot:left> <template v-slot:left>
<uv-icon name="arrow-left" size="19" color="#ffffff"></uv-icon> <uv-icon name="arrow-left" size="19" color="#ffffff"></uv-icon>
</template> </template>
<template v-slot:center> <template v-slot:center>
<text style="color:#ffffff">{{title}}</text> <text style="color:#ffffff">{{title}}</text>
</template> </template>
</uv-navbar> </uv-navbar>
<view class="container"> <view class="container">
<view class="pb-2 flex px-5" style="background-color: #09b4f1;"> <view class="pb-2 flex px-5" style="background-color: #09b4f1;">
<uv-search placeholder="搜索品名称" v-model="keyword" bgColor="#ffffff" :customStyle="customStyle" :show-action="false" @change="onSearch"></uv-search> <uv-search placeholder="搜索品名称" v-model="keyword" bgColor="#ffffff" :customStyle="customStyle" :show-action="false" @change="onSearch"></uv-search>
<uv-icon name="/static/images/screen.png" :size="26" @click="openSearch"></uv-icon> <uv-icon name="/static/images/screen.png" :size="26" @click="openSearch"></uv-icon>
</view> </view>
<view class="wrap"> <view class="wrap">
<scroll-view scroll-y class="sv" :style="{height:scrollHeight+'px'}" :scroll-top="scrollTop" @scroll="scroll" @scrolltolower="reachBottom"> <scroll-view scroll-y class="sv" :style="{height:scrollHeight+'px'}" :scroll-top="scrollTop" @scroll="scroll" @scrolltolower="reachBottom">
<view class="page-box"> <view class="page-box">
<block v-if="list.length > 0"> <block v-if="list.length > 0">
<uv-checkbox-group> <uv-checkbox-group>
<view class="client" v-for="(item, index) in list" :key="index"> <view class="client" v-for="(item, index) in list" :key="index">
<view class="top"> <view class="top">
<view class="left"> <view class="left">
<view class="store"> <view class="store">
<uv-checkbox <uv-checkbox
disabled disabled
activeColor = "#09b4f1" activeColor = "#09b4f1"
:checked="item.checked" :checked="item.checked"
:name="item.id" :name="item.id"
>{{item.storeName}}</uv-checkbox> >{{item.storeName}}</uv-checkbox>
</view> </view>
</view> </view>
</view> </view>
<view class="item"> <view class="item">
<view class="content flex-1"> <view class="content flex-1">
<view class="title uv-line-2 flex"> <view class="title uv-line-2 flex">
<view class="mr-1">规格{{item.sku}}</view> <view class="mr-1">规格{{item.sku}}</view>
<uv-text color="#3c9cff" text="选择规格" @click="selectSku(item.id,index)"></uv-text> <uv-text color="#3c9cff" text="选择规格" @click="selectSku(item.id,index)"></uv-text>
</view> </view>
<view class="type">编号{{item.id}}</view> <view class="type">编号{{item.id}}</view>
</view> </view>
<view class="right flex-1"> <view class="right flex-1">
<view class="title">库存{{item.stock}}</view> <view class="title">库存{{item.stock}}</view>
<view class="decimal">价格{{item.price}}</view> <view class="decimal">价格{{item.price}}</view>
</view> </view>
</view> </view>
<view class="bottom"> <view class="bottom">
<view class="client_time">添加时间: {{formatDateTime(item.createTime)}}</view> <view class="client_time">添加时间: {{formatDateTime(item.createTime)}}</view>
<view class="flex"> <view class="flex">
<view class="btn ml-1 entity" @click.stop="onSelect(item,index)">{{item.checked ? '取消':'选择'}}</view> <view class="btn ml-1 entity" @click.stop="onSelect(item,index)">{{item.checked ? '取消':'选择'}}</view>
</view> </view>
</view> </view>
</view> </view>
</uv-checkbox-group> </uv-checkbox-group>
<uv-load-more :status="listStatus" ></uv-load-more> <uv-load-more :status="listStatus" ></uv-load-more>
</block> </block>
<uv-empty text="暂无数据" v-else margin-top="50" mode="list"></uv-empty> <uv-empty text="暂无数据" v-else margin-top="50" mode="list"></uv-empty>
</view> </view>
</scroll-view> </scroll-view>
<view class="bottom_btn flex justify-end"> <view class="bottom_btn flex justify-end">
<view class="mr-1"> <view class="mr-1">
<uv-button @click="selectedShow" customStyle="padding-left:80rpx;padding-right:80rpx;border:solid" >查看已选</uv-button> <uv-button @click="selectedShow" customStyle="padding-left:80rpx;padding-right:80rpx;border:solid" >查看已选</uv-button>
</view> </view>
<view class="mr-1"> <view class="mr-1">
<uv-button color="#09b4f1" customStyle="padding-left:80rpx;padding-right:80rpx;" @click="chosen" >选好了</uv-button> <uv-button color="#09b4f1" customStyle="padding-left:80rpx;padding-right:80rpx;" @click="chosen" >选好了</uv-button>
</view> </view>
</view> </view>
</view> </view>
<!-- 已选产品弹窗 --> <!-- 已选产品弹窗 -->
<uv-popup mode="bottom" round="38" ref="selectedRef" > <uv-popup mode="bottom" round="38" ref="selectedRef" >
<view class="popup-content"> <view class="popup-content">
<view class="popup-title"> <view class="popup-title">
<view class="" style="width: 45px;"> <view class="" style="width: 45px;">
</view> </view>
<text class="">已选产品</text> <text class="">已选产品</text>
<view class="" @click="selectedClose" style="width: 45px;"> <view class="" @click="selectedClose" style="width: 45px;">
<uv-icon name="close" color="#909399" size="30"></uv-icon> <uv-icon name="close" color="#909399" size="30"></uv-icon>
</view> </view>
</view> </view>
<scroll-view scroll-y style="height: 960rpx;width: 100%;" @scrolltolower="reachBottom"> <scroll-view scroll-y style="height: 960rpx;width: 100%;" @scrolltolower="reachBottom">
<view class="list"> <view class="list">
<block v-if="selectList.length > 0"> <block v-if="selectList.length > 0">
<view class="mb-4"> <view class="mb-4">
<view class="item flex" v-for="(item,index) in selectList" :key="index"> <view class="item flex" v-for="(item,index) in selectList" :key="index">
<view class="title pr-1">{{item.storeName}}(规格:{{item.sku}})</view> <view class="title pr-1">{{item.storeName}}(规格:{{item.sku}})</view>
<view class="check-icon"> <view class="check-icon">
<uv-button size="mini" type="error" @click="remove(item,index)">删除</uv-button> <uv-button size="mini" type="error" @click="remove(item,index)">删除</uv-button>
</view> </view>
</view> </view>
</view> </view>
<uv-load-more status="nomore" ></uv-load-more> <uv-load-more status="nomore" ></uv-load-more>
</block> </block>
<uv-empty text="暂无数据,请先选择产品" v-else margin-top="50" mode="list"></uv-empty> <uv-empty text="暂无数据,请先选择产品" v-else margin-top="50" mode="list"></uv-empty>
</view> </view>
</scroll-view> </scroll-view>
</view> </view>
</uv-popup> </uv-popup>
<!-- 选择sku弹窗 --> <!-- 选择sku弹窗 -->
<uv-popup mode="bottom" round="38" ref="selectShowRef" > <uv-popup mode="bottom" round="38" ref="selectShowRef" >
<view class="popup-content"> <view class="popup-content">
<view class="popup-title"> <view class="popup-title">
<view class="" style="width: 45px;"> <view class="" style="width: 45px;">
</view> </view>
<text class="">选择品规格</text> <text class="">选择品规格</text>
<view class="" @click="selectShowClose" style="width: 45px;"> <view class="" @click="selectShowClose" style="width: 45px;">
<uv-icon name="close" color="#909399" size="30"></uv-icon> <uv-icon name="close" color="#909399" size="30"></uv-icon>
</view> </view>
</view> </view>
<scroll-view scroll-y style="height: 760rpx;width: 100%;" @scrolltolower="reachBottom"> <scroll-view scroll-y style="height: 760rpx;width: 100%;" @scrolltolower="reachBottom">
<view class="list"> <view class="list">
<block v-if="skuList.length > 0"> <block v-if="skuList.length > 0">
<view class="mb-4"> <view class="mb-4">
<view class="item flex" v-for="(item,index) in skuList" :key="index" @click="onItem(item,index)"> <view class="item flex" v-for="(item,index) in skuList" :key="index" @click="onItem(item,index)">
<view class="title">{{item.sku}}</view> <view class="title">{{item.sku}}</view>
<view class="check-icon"> <view class="check-icon">
<uv-icon v-if="item.checked" name="checkmark" color="#09b4f1" size="28"></uv-icon> <uv-icon v-if="item.checked" name="checkmark" color="#09b4f1" size="28"></uv-icon>
</view> </view>
</view> </view>
</view> </view>
</block> </block>
<uv-empty text="暂无数据" v-else mode="list"></uv-empty> <uv-empty text="暂无数据" v-else mode="list"></uv-empty>
</view> </view>
</scroll-view> </scroll-view>
</view> </view>
</uv-popup> </uv-popup>
</view> </view>
</template> </template>
<script setup> <script setup>
import { import {
ref, ref,
unref, unref,
computed computed
} from 'vue' } from 'vue'
import { onLoad,onShow,onReady } from '@dcloudio/uni-app' import { onLoad,onShow,onReady } from '@dcloudio/uni-app'
import { import {
getProducts, getProducts,
getProductsSku getProductsSku
} from '@/api/business' } from '@/api/business'
import AddressSelect from '@/components/AddressSelect/index.vue' import AddressSelect from '@/components/AddressSelect/index.vue'
import { formatDateTime,prePage } from '@/utils/util' import { formatDateTime,prePage } from '@/utils/util'
import { useMainStore } from '@/store/store' import { useMainStore } from '@/store/store'
import { storeToRefs } from 'pinia' import { storeToRefs } from 'pinia'
const main = useMainStore() const main = useMainStore()
const title = ref('选择品') const title = ref('选择品')
const keyword = ref('') const keyword = ref('')
const selected = ref(false) const selected = ref(false)
const priceShow = ref(false) const priceShow = ref(false)
const oldScrollTop = ref(0) const oldScrollTop = ref(0)
const scrollTop = ref(-1) const scrollTop = ref(-1)
const skuList = ref([]) const skuList = ref([])
// search: { // search: {
// fontSise: '18px' // fontSise: '18px'
// }, // },
const list = ref([]) const list = ref([])
const selectList = ref([]) const selectList = ref([])
const consentShow = ref(false) const consentShow = ref(false)
const refund_type = ref(1) const refund_type = ref(1)
const current = ref(0) const current = ref(0)
const pH = ref(0) const pH = ref(0)
const dx = ref(0) const dx = ref(0)
const scrollHeight = ref(0) const scrollHeight = ref(0)
const page = ref(1) const page = ref(1)
const pageSize = ref(10) const pageSize = ref(10)
const lastPage = ref(false) const lastPage = ref(false)
const listStatus = ref('loadmore') const listStatus = ref('loadmore')
const status = ref('') const status = ref('')
const order_id = ref('') const order_id = ref('')
const thisIndex = ref(0) const thisIndex = ref(0)
onReady(()=>{ onReady(()=>{
uni.getSystemInfo({ uni.getSystemInfo({
success(res) { success(res) {
@ -186,292 +186,292 @@ onReady(()=>{
}).exec() }).exec()
} }
}) })
}) })
onLoad((e) => { onLoad((e) => {
//getBusinessList(); //getBusinessList();
}) })
onShow(()=>{ onShow(()=>{
getProductList() getProductList()
}) })
// //
const selectShowRef = ref() const selectShowRef = ref()
const onSelect = (val,i)=> { const onSelect = (val,i)=> {
if(!val.sku){ if(!val.sku){
uni.showToast({ uni.showToast({
title: '请先选择品规格', title: '请先选择品规格',
icon: 'error', icon: 'error',
duration: 2000 duration: 2000
}) })
return return
} }
list.value.forEach((item,index) => { list.value.forEach((item,index) => {
if(val.id == item.id) { if(val.id == item.id) {
item.checked = item.checked ? !item.checked : true item.checked = item.checked ? !item.checked : true
} }
}) })
// //
if(list.value[i].checked == true) { if(list.value[i].checked == true) {
// //
selectList.value.push(list.value[i]) selectList.value.push(list.value[i])
} else { } else {
// //
selectList.value.forEach((item,i) => { selectList.value.forEach((item,i) => {
if(item.id == val.id) { if(item.id == val.id) {
selectList.value.splice(i, 1) selectList.value.splice(i, 1)
} }
}) })
} }
console.log('selectList:',selectList.value) console.log('selectList:',selectList.value)
} }
const selectSku = async(val,index) => { const selectSku = async(val,index) => {
thisIndex.value = index thisIndex.value = index
skuList.value = await getProductsSku({id:val}) skuList.value = await getProductsSku({id:val})
unref(selectShowRef).open() unref(selectShowRef).open()
} }
const selectShowClose = () => { const selectShowClose = () => {
unref(selectShowRef).close() unref(selectShowRef).close()
} }
const selectedRef = ref() const selectedRef = ref()
const selectedShow = () => { const selectedShow = () => {
unref(selectedRef).open() unref(selectedRef).open()
} }
const selectedClose = () => { const selectedClose = () => {
unref(selectedRef).close() unref(selectedRef).close()
} }
// //
const onItem = (val,i) => { const onItem = (val,i) => {
skuList.value.forEach((item,index) => { skuList.value.forEach((item,index) => {
if(val.id == item.id) { if(val.id == item.id) {
item.checked = true item.checked = true
} else { } else {
item.checked = false item.checked = false
} }
}) })
list.value[thisIndex.value].sku = val.sku list.value[thisIndex.value].sku = val.sku
list.value[thisIndex.value].productAttrUnique = val.unique list.value[thisIndex.value].productAttrUnique = val.unique
selectShowClose() selectShowClose()
} }
// //
const remove = (val,index)=> { const remove = (val,index)=> {
list.value.forEach((i,index) => { list.value.forEach((i,index) => {
if(val.id == i.id) { if(val.id == i.id) {
i.checked = false i.checked = false
} }
}) })
selectList.value.splice(index, 1) selectList.value.splice(index, 1)
} }
// //
const chosen = () => { const chosen = () => {
// //
main.SET_SELECT_PRODUCT(selectList.value) main.SET_SELECT_PRODUCT(selectList.value)
uni.navigateBack(); uni.navigateBack();
} }
// //
const getProductList = async(isNextPage,pages) => { const getProductList = async(isNextPage,pages) => {
await getProducts({ await getProducts({
pageNo: page.value, pageNo: page.value,
pageSize: pageSize.value, pageSize: pageSize.value,
storeName:keyword.value, storeName:keyword.value,
isShow: 1 isShow: 1
}).then(res => { }).then(res => {
if(res) { if(res) {
res.list.forEach((item,index)=>{ res.list.forEach((item,index)=>{
//item.create_time = this.timeFormats(item.create_time) //item.create_time = this.timeFormats(item.create_time)
item.checked = false item.checked = false
// //
item.nums = 1 item.nums = 1
item.remarks = '' item.remarks = ''
selectList.value.forEach((i,index) => { selectList.value.forEach((i,index) => {
if(i.id == item.id) { if(i.id == item.id) {
item.checked = true item.checked = true
} }
}) })
}) })
if (res.list.length < 10) { if (res.list.length < 10) {
listStatus.value = 'nomore' listStatus.value = 'nomore'
} }
if(res.list.length == 0) { if(res.list.length == 0) {
lastPage.value = true lastPage.value = true
} }
// //
if(isNextPage) { if(isNextPage) {
list.value = list.value.concat(res.list) list.value = list.value.concat(res.list)
return return
} }
list.value = res.list list.value = res.list
} }
}) })
} }
// scroll // scroll
const scroll = (e) => { const scroll = (e) => {
oldScrollTop.value = e.detail.scrollTop oldScrollTop.value = e.detail.scrollTop
} }
// //
const reachBottom = () => { const reachBottom = () => {
if(lastPage.value || listStatus.value == 'loading') return ; if(lastPage.value || listStatus.value == 'loading') return ;
this.listStatus = 'loading' this.listStatus = 'loading'
setTimeout(() => { setTimeout(() => {
if(lastPage.value) return ; if(lastPage.value) return ;
getProductList(true,++page.value) getProductList(true,++page.value)
if(list.value.length >= 10) { if(list.value.length >= 10) {
listStatus.value = 'loadmore' listStatus.value = 'loadmore'
}else { }else {
listStatus.value = 'loading' listStatus.value = 'loading'
} }
}, 1200) }, 1200)
} }
// //
const onSearch = () => { const onSearch = () => {
page.value = 1 page.value = 1
getProductList() getProductList()
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.container { .container {
background-color: #F7F7F7; background-color: #F7F7F7;
min-height: 100vh; min-height: 100vh;
} }
.page-box { .page-box {
padding: 20rpx 20rpx 160rpx; padding: 20rpx 20rpx 160rpx;
} }
.client { .client {
width: 710rpx; width: 710rpx;
background-color: #ffffff; background-color: #ffffff;
margin-bottom: 20rpx; margin-bottom: 20rpx;
border-radius: 20rpx; border-radius: 20rpx;
box-sizing: border-box; box-sizing: border-box;
padding: 20rpx; padding: 20rpx;
font-size: 28rpx; font-size: 28rpx;
.top { .top {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
.left { .left {
display: flex; display: flex;
align-items: center; align-items: center;
.store { .store {
font-size: 28rpx; font-size: 28rpx;
font-weight: bold; font-weight: bold;
} }
} }
.right { .right {
color: #FF7159; color: #FF7159;
} }
} }
.item { .item {
display: flex; display: flex;
align-items: center; align-items: center;
margin: 20rpx 0 0; margin: 20rpx 0 0;
.content { .content {
font-size: 28rpx; font-size: 28rpx;
.title { .title {
line-height: 50rpx; line-height: 50rpx;
} }
.type { .type {
margin: 10rpx 0; margin: 10rpx 0;
} }
} }
.right { .right {
margin-left: 10rpx; margin-left: 10rpx;
.title { .title {
line-height: 50rpx; line-height: 50rpx;
} }
.decimal { .decimal {
margin: 10rpx 0; margin: 10rpx 0;
} }
.number { .number {
color: $uv-tips-color; color: $uv-tips-color;
font-size: 24rpx; font-size: 24rpx;
} }
} }
} }
.bottom { .bottom {
display: flex; display: flex;
margin-top: 20rpx; margin-top: 20rpx;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
.client_time { .client_time {
color: #777; color: #777;
font-size: 26rpx; font-size: 26rpx;
} }
.btn { .btn {
line-height: 60rpx; line-height: 60rpx;
width: 160rpx; width: 160rpx;
border-radius: 5px; border-radius: 5px;
font-size: 26rpx; font-size: 26rpx;
text-align: center; text-align: center;
color: $uv-info-dark; color: $uv-info-dark;
} }
.entity { .entity {
color: #fff; color: #fff;
background-color: #09b4f1; background-color: #09b4f1;
} }
} }
} }
.wrap { .wrap {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
width: 100%; width: 100%;
} }
.bottom_btn { .bottom_btn {
position: fixed; position: fixed;
bottom: 0; bottom: 0;
left: 0; left: 0;
right: 0; right: 0;
text-align: right; text-align: right;
padding: 28rpx 10rpx 45rpx; padding: 28rpx 10rpx 45rpx;
background-color: #fff; background-color: #fff;
z-index: 100; z-index: 100;
} }
.popup-content { .popup-content {
.popup-title { .popup-title {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
position: relative; position: relative;
font-size: 35rpx; font-size: 35rpx;
font-weight: 600; font-weight: 600;
text-align: center; text-align: center;
height: 50px; height: 50px;
padding-right: 25rpx; padding-right: 25rpx;
} }
.list { .list {
margin-bottom: 45rpx; margin-bottom: 45rpx;
.item { .item {
padding: 0 25rpx; padding: 0 25rpx;
justify-content: space-between; justify-content: space-between;
height: 55px; height: 55px;
.title { .title {
flex: 1; flex: 1;
font-size: 28rpx; font-size: 28rpx;
font-weight: 600; font-weight: 600;
} }
.check-icon { .check-icon {
text-align: center; text-align: center;
width: 100rpx; width: 100rpx;
} }
} }
} }
} }
</style> </style>

File diff suppressed because it is too large Load Diff

View File

@ -4,7 +4,7 @@
<uv-icon name="arrow-left" size="19" color="#ffffff"></uv-icon> <uv-icon name="arrow-left" size="19" color="#ffffff"></uv-icon>
</template> </template>
<template v-slot:center> <template v-slot:center>
<text style="color:#ffffff">品详情</text> <text style="color:#ffffff">品详情</text>
</template> </template>
</uv-navbar> </uv-navbar>
<view class="page" v-if="state.productInfo"> <view class="page" v-if="state.productInfo">
@ -25,10 +25,6 @@
<view class="info"> <view class="info">
{{state.productInfo.cate_id}} {{state.productInfo.cate_id}}
</view> </view>
<view class="title">产品价格</view>
<view class="info">
{{state.productInfo.price || 0}}
</view>
<view class="title">产品简介</view> <view class="title">产品简介</view>
<view class="info"> <view class="info">
{{state.productInfo.store_info || '暂无'}} {{state.productInfo.store_info || '暂无'}}

View File

@ -12,7 +12,7 @@
</view> </view>
<view class="info"> <view class="info">
<view class="title">名称{{ item.storeName }}</view> <view class="title">名称{{ item.storeName }}</view>
<view class="price">价格<text class="num">{{ item.price }}</text></view> <!-- <view class="price">价格<text class="num">{{ item.price }}</text></view> -->
</view> </view>
</view> </view>
</view> </view>
@ -27,7 +27,7 @@
</view> </view>
<view class="info"> <view class="info">
<view class="title">名称{{ item.storeName }}</view> <view class="title">名称{{ item.storeName }}</view>
<view class="price">价格<text class="num">{{ item.price }}</text></view> <!-- <view class="price">价格<text class="num">{{ item.price }}</text></view> -->
</view> </view>
</view> </view>
</view> </view>
@ -111,14 +111,14 @@
} }
.info { .info {
padding: 10rpx 12rpx 20rpx 16rpx; padding: 14rpx 16rpx 24rpx 16rpx;
.title { .title {
overflow: hidden; overflow: hidden;
white-space: nowrap; white-space: nowrap;
text-overflow: ellipsis; text-overflow: ellipsis;
-o-text-overflow: ellipsis; -o-text-overflow: ellipsis;
font-size: 28rpx; font-size: 30rpx;
color: #333; color: #333;
} }

View File

@ -9,7 +9,7 @@
</template> </template>
</uv-navbar> </uv-navbar>
<view class="pb-2 flex px-5" style="background-color: #09b4f1;"> <view class="pb-2 flex px-5" style="background-color: #09b4f1;">
<uv-search placeholder="搜索品名称" v-model="keyword" bgColor="#ffffff" :customStyle="customStyle" <uv-search placeholder="搜索品名称" v-model="keyword" bgColor="#ffffff" :customStyle="customStyle"
:show-action="false" @change="onSearch"></uv-search> :show-action="false" @change="onSearch"></uv-search>
<!-- <uv-icon name="/static/images/screen.png" :size="26" @click="openSearch"></uv-icon> --> <!-- <uv-icon name="/static/images/screen.png" :size="26" @click="openSearch"></uv-icon> -->
</view> </view>
@ -52,7 +52,7 @@
storeToRefs storeToRefs
} from 'pinia' } from 'pinia'
const main = useMainStore() const main = useMainStore()
const title = ref('品') const title = ref('品')
const keyword = ref('') const keyword = ref('')
const listStatus = ref('loadmore') const listStatus = ref('loadmore')
const total = ref(-1) const total = ref(-1)