#
whycq
2023-11-01 9b3f629cb2d15d0e77d7ecd827f84629ddd0c9a9
components/z-data-list/z-data-list.vue
@@ -2,18 +2,24 @@
   <view >
      <view class="main">
         <view class="main-left" >
            <view class="main-list" v-for="it in dataList" style="width: 100%;">
            <view class="main-list" v-for="it in list" style="width: 100%;">
               <view class="left-key">{{it.key}}</view>
               <view>:</view>
               <view class="left-val">
                  <text class="val-text" style="">{{it.value}}</text>
                  <text :class="it.valText">{{it.value}}</text>
               </view>
            </view>
         </view>
         <uni-badge class="main-right uni-badge-left-margin" :text="index" absolute="rightTop" size="small" type="primary">
            <view @click="goDetail">
         <uni-badge
            class="main-right uni-badge-left-margin"
            :text="index"
            absolute="rightTop"
            size="small"
            type="primary"
            >
            <view style="height: 100%;display: flex;align-items: center;" @click="goDetail">
               <view class="list-options">
                  <uni-icons class="opt-icon" type="right" size="20" color="#707070"></uni-icons>
                  <uni-icons class="opt-icon" type="right" size="20" color="#b9b9b9"></uni-icons>
               </view>
            </view>
         </uni-badge>
@@ -35,7 +41,8 @@
               {key: '数量',value: '200'}
            ],
            detailList: [],
            dataKey: {}
            dataKey: {},
            valText: 'val-text'
         };
      },
      methods: {
@@ -44,11 +51,11 @@
         }
      },
      created() {
         this.dataList = this.list.detl
         // this.dataList = this.list.detl
      },
      props: {
         list: {
            type: Object,
            type: Array,
            default() {
               return {}
            }
@@ -72,33 +79,37 @@
<style scoped>
   .main {
      position: relative;
      min-height: 70rpx;
      background-color: #ebe7e6;
      min-height: 35px;
      background-color: #f5f5f5;
      display: flex;
      align-items: stretch;
      margin: 8px 8px 8px 8px;
      border-radius: 16rpx;
      margin: 8px 12px 8px 12px;
      border-radius: 8px;
   }
   .main-left {
      flex: 7;
      display: flex;
      flex-direction: column;
      padding-top: 8rpx;
      padding-bottom: 8rpx;
      color: #444;
      padding-top: 4px;
      padding-bottom: 4px;
      color: #606164;
      font-size: 14px;
   }
   .main-right {
      flex: 1;
      width: 30px;
      display: flex;
      align-items: center;
      justify-content: center;
      border-left: 1px solid #ffffff;
   }
   .main-right:active {
      background-color: #e3e5e7;
      color: #FFF;
   }
   .main-list {
      display: flex;
      align-items: center;
      margin: 8rpx 0;
      margin: 2px 0;
   }
   .list-options {
      display: flex;
@@ -113,20 +124,25 @@
      display: flex;
   }
   .left-key {
      width: 130rpx;
      padding-right: 8rpx;
      width: 65px;
      padding-right: 4px;
      text-align: end;
      font-weight: 700;
   }
   .left-val {
      flex: 1;
      padding-left: 8rpx;
      color: #666;
      padding-left: 4px;
      color: #606266;
   }
   .val-text {
      background-color: blue;
      background-color: #00aeec;
      padding: 2px 4px;
      border-radius: 8rpx;
      color: white;
      border-radius: 4px;
      color: #FFF;
   }
   .val-num {
      font-weight: 900;
      color: #d19a66;
      font-size: 16px;
   }
</style>