diff --git a/.prettierrc.json b/.prettierrc.json index 66e2335..e6a82c6 100644 --- a/.prettierrc.json +++ b/.prettierrc.json @@ -1,8 +1,10 @@ { - "$schema": "https://json.schemastore.org/prettierrc", - "semi": false, - "tabWidth": 2, - "singleQuote": true, - "printWidth": 100, - "trailingComma": "none" -} \ No newline at end of file + "$schema": "https://json.schemastore.org/prettierrc", + "semi": false, + "tabWidth": 4, + "singleQuote": true, + "printWidth": 100, + "useTabs": true, + "trailingComma": "none", + "vueIndentScriptAndStyle": true +} diff --git a/package-lock.json b/package-lock.json index ea04592..49acb82 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,6 +13,7 @@ "crypto-js": "^4.2.0", "element-plus": "^2.13.2", "gsap": "^3.13.0", + "lodash-es": "^4.18.1", "markdown-it": "^14.1.0", "md5": "^2.3.0", "normalize.css": "^8.0.1", @@ -4790,9 +4791,9 @@ "license": "MIT" }, "node_modules/lodash-es": { - "version": "4.17.23", - "resolved": "https://registry.npmmirror.com/lodash-es/-/lodash-es-4.17.23.tgz", - "integrity": "sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.18.1.tgz", + "integrity": "sha512-J8xewKD/Gk22OZbhpOVSwcs60zhd95ESDwezOFuA3/099925PdHJ7OFHNTGtajL3AlZkykD32HykiMo+BIBI8A==", "license": "MIT" }, "node_modules/lodash-unified": { @@ -12111,9 +12112,9 @@ "integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==" }, "lodash-es": { - "version": "4.17.23", - "resolved": "https://registry.npmmirror.com/lodash-es/-/lodash-es-4.17.23.tgz", - "integrity": "sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg==" + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.18.1.tgz", + "integrity": "sha512-J8xewKD/Gk22OZbhpOVSwcs60zhd95ESDwezOFuA3/099925PdHJ7OFHNTGtajL3AlZkykD32HykiMo+BIBI8A==" }, "lodash-unified": { "version": "1.0.3", diff --git a/package.json b/package.json index 67c6294..65f1f1a 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,7 @@ "crypto-js": "^4.2.0", "element-plus": "^2.13.2", "gsap": "^3.13.0", + "lodash-es": "^4.18.1", "markdown-it": "^14.1.0", "md5": "^2.3.0", "normalize.css": "^8.0.1", diff --git a/src/api/user.ts b/src/api/user.ts index f95e98e..ae2967d 100644 --- a/src/api/user.ts +++ b/src/api/user.ts @@ -16,15 +16,19 @@ export const fetchMyWardrobe = (data: WardrobeItem): Promise => { } export interface OrderItem { - status: number // 0未支付 1已支付 2已取消 不穿查全部 + status?: number // 0未支付 1已支付 2已取消 不传查全部 page: number size: number } -export const fetchMyOrders = (data: OrderItem): Promise => { + +export interface OrdersPageResponse { + content: any[] +} + +export const fetchMyOrders = (data: OrderItem): Promise => { return request({ url: '/buyer/buyer/order/page', method: 'get', params: data }) } - diff --git a/src/assets/images/avatar.png b/src/assets/images/avatar.png new file mode 100644 index 0000000..6a0f374 Binary files /dev/null and b/src/assets/images/avatar.png differ diff --git a/src/assets/images/brand/brandDetailBg.png b/src/assets/images/brand/brandDetailBg.png index d5b004b..55b5d3e 100644 Binary files a/src/assets/images/brand/brandDetailBg.png and b/src/assets/images/brand/brandDetailBg.png differ diff --git a/src/components/checked.vue b/src/components/checked.vue index e293ba1..1e8c3bf 100644 --- a/src/components/checked.vue +++ b/src/components/checked.vue @@ -6,34 +6,42 @@ const props = defineProps({ default:()=>[] }, selected:{ - type:String, - default:()=>'' + type:Array, + default:()=>[] } }) const emit = defineEmits([ 'update:selected','change' ]) const checkList = computed(()=>{ - if(props.selected[0] === ''){ + if(props.selected[0] === 'all'){ return props.list.map(item => item.value) }else{ return [...props.selected] } }) const handleChange = (val) => { - emit('update:selected', val) - emit('change', val) + let data = val.filter(item => item !== 'all') + if(val.length == 0)return + if(data.length == props.list.length){ + data = ['all'] + }else{ + data = [...val] + } + emit('update:selected', data) + emit('change', data) } const checkAll = computed(()=>{ return checkList.value.length === props.list.length }) const handleCheckAllChange = (val) => { let data = [] - if(val){ - data = props.list.map(item => item.value) + if(val && props.selected[0] !== 'all'){ + data = ['all'] + // data = props.list.map(item => item.value) + emit('update:selected', data) + emit('change', data) } - emit('update:selected', data) - emit('change', data) } let data = reactive({ }) diff --git a/src/directives/avatarLoad.js b/src/directives/avatarLoad.js new file mode 100644 index 0000000..8e8b287 --- /dev/null +++ b/src/directives/avatarLoad.js @@ -0,0 +1,27 @@ +// 加载图片 +import avatar from '@/assets/images/avatar.png' +export default { + name: 'avatarLoad', + mmounted(el, binding) { + loadImage(el, binding.value) + }, + updated(el, binding) { + // 当 binding.value 发生变化时重新加载 + if (binding.oldValue !== binding.value) { + loadImage(el, binding.value) + } + }, +}; +function loadImage(el, src) { + if (!src) return + + const img = new Image() + img.src = src + img.onload = () => { + el.src = src + } + img.onerror = () => { + el.src = avatar // 默认头像 + console.log('图片加载失败:', src) + } +} \ No newline at end of file diff --git a/src/lang/en.ts b/src/lang/en.ts index ee75b00..f94a3b8 100644 --- a/src/lang/en.ts +++ b/src/lang/en.ts @@ -133,7 +133,6 @@ export default { subtitle: 'Your digital pieces, all in one place', common: { all: 'All', - currencyHkd: 'HKD' }, tabs: { ariaLabel: 'Wardrobe tabs', @@ -187,7 +186,7 @@ export default { } }, ClothesCategories: { - blouses: 'Blouse', + blouse: 'Blouse', dress: 'Dress', trousers: 'Trousers', skirt: 'Skirt', diff --git a/src/lang/zh-cn.ts b/src/lang/zh-cn.ts index 56100c3..10de1ad 100644 --- a/src/lang/zh-cn.ts +++ b/src/lang/zh-cn.ts @@ -133,7 +133,6 @@ export default { subtitle: '你的数字单品尽在此处', common: { all: '全部', - currencyHkd: 'HKD' }, tabs: { ariaLabel: '衣橱标签页', @@ -187,7 +186,7 @@ export default { } }, ClothesCategories: { - blouses: '衬衫', + blouse: '衬衫', dress: '连衣裙', trousers: '裤子', skirt: '短裙', diff --git a/src/utils/ClothesCategory.ts b/src/utils/ClothesCategory.ts index cd8d276..eac9c9f 100644 --- a/src/utils/ClothesCategory.ts +++ b/src/utils/ClothesCategory.ts @@ -6,8 +6,8 @@ type Translate = (key: string) => string const clothesCategoryConfigs = [ { - key: 'blouses', - value: 'blouses' + key: 'blouse', + value: 'blouse' }, { key: 'dress', diff --git a/src/views/brand/brand-item.vue b/src/views/brand/brand-item.vue index 945a12a..73a424f 100644 --- a/src/views/brand/brand-item.vue +++ b/src/views/brand/brand-item.vue @@ -25,7 +25,7 @@ const {} = toRefs(data);
- +
{{ item.shopName }}
diff --git a/src/views/brand/index.vue b/src/views/brand/index.vue index ded72e4..2772117 100644 --- a/src/views/brand/index.vue +++ b/src/views/brand/index.vue @@ -6,8 +6,6 @@ import scListNull from '@/views/shoppingCart/sc-list-null.vue' import brandItem from '@/views/brand/brand-item.vue' import { getDesignerList } from '@/api/brand' - -import img from '@/assets/images/collectionStory/Rectangle.png' //const props = defineProps({ //}) //const emit = defineEmits([ diff --git a/src/views/brandDetail/commodity-list.vue b/src/views/brandDetail/commodity-list.vue index 0b7c179..52462d0 100644 --- a/src/views/brandDetail/commodity-list.vue +++ b/src/views/brandDetail/commodity-list.vue @@ -1,6 +1,5 @@