Pārlūkot izejas kodu

【功能修复】修复用户订单卡片装修的背景图片问题

卢越 1 gadu atpakaļ
vecāks
revīzija
35c75338ee

+ 1 - 1
sheep/components/s-block-item/s-block-item.vue

@@ -49,7 +49,7 @@
     <!-- 用户组件:用户卡片 -->
     <s-user-card v-if="type === 'UserCard'" :data="data" :styles="styles" />
     <!-- 用户组件:用户订单 -->
-    <s-order-card v-if="type === 'UserOrder'" :data="data" />
+    <s-order-card v-if="type === 'UserOrder'" :data="data" :styles="styles" />
     <!-- 用户组件:用户资产 -->
     <s-wallet-card v-if="type === 'UserWallet'" />
     <!-- 用户组件:用户卡券 -->

+ 26 - 2
sheep/components/s-order-card/s-order-card.vue

@@ -1,6 +1,6 @@
 <!-- 装修用户组件:用户订单 -->
 <template>
-  <view class="ss-order-menu-wrap ss-flex ss-col-center">
+  <view class="ss-order-menu-wrap ss-flex ss-col-center" :style="[style, { marginLeft: `${data.space}px` }]">
     <view
       class="menu-item ss-flex-1 ss-flex-col ss-row-center ss-col-center"
       v-for="item in orderMap"
@@ -67,8 +67,32 @@
       path: '/pages/order/list',
     },
   ];
-
+  // 接收参数
+  const props = defineProps({
+  	// 装修数据
+  	data: {
+  	  type: Object,
+  	  default: () => ({}),
+  	},
+  	// 装修样式
+  	styles: {
+  	  type: Object,
+  	  default: () => ({}),
+  	},
+  });
+  // 设置角标
   const numData = computed(() => sheep.$store('user').numData);
+  // 设置背景样式
+  const style = computed(() => {
+    // 直接从 props.styles 解构
+    const { bgType, bgImg, bgColor } = props.styles; 
+    // 根据 bgType 返回相应的样式
+    return {
+  		background: bgType === 'img'
+  			? `url(${bgImg}) no-repeat top center / 100% 100%`
+  			: bgColor
+  	};
+  });
 </script>
 
 <style lang="scss" scoped>