import { createGlobalState } from '@vueuse/core' import { ref } from 'vue' import { artworkList, defaultDetail, artworkDetail } from "@/api/goods/index.js" import {offlineQrcodeList} from "~/api-collect-code/goods/index.js"; export const goodStore = createGlobalState(() => { // 状态定义 const actionDetails = ref({}) const fullLive = ref(false) const currentItem = ref({}) const myArtWorks = ref([]) const pageRef = ref({ page: 0, pageSize: 5, itemCount: 0 }) const artWorkDetail = ref(null) const itemList = ref([]) const auctionDetail = ref({}) const loading = ref(false) const error = ref(null) // 重置分页 const resetPage = () => { pageRef.value.page = 1 pageRef.value.pageSize=5 pageRef.value.itemCount = 0 } // 获取艺术品列表 const getOfflineQrcodeList = async (isRefresh = false) => { if (isRefresh) { resetPage() } try { loading.value = true const res = await offlineQrcodeList({ page: pageRef.value.page, pageSize: pageRef.value.pageSize }) if (res.status === 0) { const newItems = res.data.Data || [] if (isRefresh) { itemList.value = newItems } else { itemList.value = [...itemList.value, ...newItems] } pageRef.value.itemCount = res.data.count || 0 return { finished: !newItems.length || newItems.length < pageRef.value.pageSize, items: newItems } } return { finished: true, items: [] } } catch (err) { return { finished: true, items: [] } } finally { loading.value = false } } return { // 状态 actionDetails, fullLive, currentItem, myArtWorks, pageRef, artWorkDetail, itemList, auctionDetail, loading, error, // 方法 getOfflineQrcodeList, resetPage } })