Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

evaluate-issue-item.vue 2.7KB

před 2 roky
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. <!-- 发行评价列表 Item -->
  2. <template>
  3. <view class="item-box" v-for="(item,index) in dataList" :key="index">
  4. <view class="top as-layout-horizontal as-gravity-center-start">
  5. <view class="as-layout-horizontal as-gravity-center-start">
  6. <image :src="`${$imgUrl}order/icon-star-green.png`"></image>
  7. <text>{{item.title}}</text>
  8. </view>
  9. <view class="time">{{item.time}}</view>
  10. </view>
  11. <view class="center">
  12. <view class="as-layout-horizontal as-gravity-center-start">
  13. <image :src="`${$imgUrl}user/icon-avatar.png`"></image>
  14. <text>{{item.name}}</text>
  15. </view>
  16. <view class="content">{{item.content}}</view>
  17. </view>
  18. <view class="bottom">
  19. <view class="text good" v-if="item.evaluate === '好评'">好评</view>
  20. <view class="text middle" v-if="item.evaluate === '中评'">中评</view>
  21. <view class="text bad" v-if="item.evaluate === '差评'">差评</view>
  22. <view class="score">{{item.score}}分</view>
  23. </view>
  24. </view>
  25. </template>
  26. <script setup lang="ts">
  27. defineProps({
  28. //数据列表
  29. dataList:{
  30. type:Array,
  31. default:()=>{
  32. return [];
  33. }
  34. }
  35. })
  36. </script>
  37. <style lang="scss" scoped>
  38. .item-box{
  39. background: #ffffff;
  40. box-shadow: 0rpx 2rpx 6rpx 0rpx rgba(223,223,223,0.8);
  41. border-radius: 20rpx;
  42. margin-bottom: 30rpx;
  43. .top{
  44. min-height: 88rpx;
  45. padding: 0rpx 30rpx;
  46. border-bottom: 1rpx solid #DCDCDC;
  47. image{
  48. width: 48rpx;
  49. height: 53rpx;
  50. }
  51. text{
  52. margin-left: 12rpx;
  53. font-size: 30rpx;
  54. font-family: Noto Sans S Chinese;
  55. font-weight: 400;
  56. color: #333333;
  57. }
  58. .time{
  59. font-size: 26rpx;
  60. color: #999999;
  61. text-align: right;
  62. }
  63. }
  64. .center{
  65. padding: 28rpx 30rpx;
  66. border-bottom: 1rpx solid #DCDCDC;
  67. image{
  68. width: 50rpx;
  69. height: 50rpx;
  70. background: #B2EEE1;
  71. border-radius: 50%;
  72. }
  73. text{
  74. font-size: 26rpx;
  75. font-size: 26rpx;
  76. font-family: Noto Sans S Chinese;
  77. font-weight: 400;
  78. color: #333333;
  79. margin-left: 22rpx;
  80. }
  81. .content{
  82. font-size: 26rpx;
  83. font-family: Noto Sans S Chinese;
  84. font-weight: 400;
  85. color: #333333;
  86. line-height: 46rpx;
  87. margin-top: 30rpx;
  88. }
  89. }
  90. .bottom{
  91. padding: 15rpx 30rpx;
  92. text-align: right;
  93. display: flex;
  94. justify-content: flex-end;
  95. align-items: center;
  96. .text{
  97. width: 97rpx;
  98. height: 36rpx;
  99. line-height: 36rpx;
  100. border-radius: 18rpx;
  101. font-size: 26rpx;
  102. text-align: center;
  103. }
  104. .good{
  105. background: #FBD9D0;
  106. color: #DD523E;
  107. }
  108. .middle{
  109. background: #FBECD0;
  110. color: #FF9600;
  111. }
  112. .bad{
  113. background: #E1E1E1;
  114. color: #999999;
  115. }
  116. .score{
  117. font-size: 26rpx;
  118. font-family: Noto Sans S Chinese;
  119. font-weight: 400;
  120. color: #333333;
  121. margin-left: 17rpx;
  122. }
  123. }
  124. }
  125. </style>