#
whycq
2023-11-01 9b3f629cb2d15d0e77d7ecd827f84629ddd0c9a9
components/z-data-list/z-data-list.vue
@@ -2,17 +2,27 @@
   <view >
      <view class="main">
         <view class="main-left" >
            <view class="main-list" v-for="it in dataList" >
               <view>{{it.key}}</view>
               <view style="margin-left: 8px;">{{it.value}}</view>
            <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="it.valText">{{it.value}}</text>
               </view>
            </view>
         </view>
         <view class="main-right" @click="goDetail">
            <view class="list-options">
               <view class="list-number">1</view>
               <view class="abdb"> > </view>
         <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="#b9b9b9"></uni-icons>
               </view>
            </view>
         </view>
         </uni-badge>
      </view>
   </view>
</template>
@@ -31,7 +41,8 @@
               {key: '数量',value: '200'}
            ],
            detailList: [],
            dataKey: {}
            dataKey: {},
            valText: 'val-text'
         };
      },
      methods: {
@@ -40,11 +51,11 @@
         }
      },
      created() {
         this.dataList = this.list.detl
         // this.dataList = this.list.detl
      },
      props: {
         list: {
            type: Object,
            type: Array,
            default() {
               return {}
            }
@@ -54,6 +65,10 @@
            default() {
               return {}
            }
         },
         index: {
            type: Number,
            default: 2
         }
      }
   }
@@ -64,28 +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: 4;
      flex: 7;
      display: flex;
      flex-direction: column;
      padding-top: 8rpx;
      padding-bottom: 8rpx;
      padding-top: 4px;
      padding-bottom: 4px;
      color: #606164;
      font-size: 14px;
   }
   .main-right {
      flex: 1;
      width: 30px;
      display: flex;
      align-items: center;
      /* flex-direction: column; */
      justify-content: center;
      border-left: 1px solid #ffffff;
   }
   .main-right:active {
      background-color: #e3e5e7;
      color: #FFF;
   }
   .main-list {
      display: flex;
      align-items: center;
      margin: 2px 0;
   }
   .list-options {
      display: flex;
@@ -96,7 +120,29 @@
      right: 10px;
      top: 5px;
   }
   .abdb {
      flex: 0;
   .opt-icon {
      display: flex;
   }
   .left-key {
      width: 65px;
      padding-right: 4px;
      text-align: end;
      font-weight: 700;
   }
   .left-val {
      flex: 1;
      padding-left: 4px;
      color: #606266;
   }
   .val-text {
      background-color: #00aeec;
      padding: 2px 4px;
      border-radius: 4px;
      color: #FFF;
   }
   .val-num {
      font-weight: 900;
      color: #d19a66;
      font-size: 16px;
   }
</style>