graceBoxBanner.vue 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <template>
  2. <view class="grace-box-banner grace-border-radius-small"
  3. :style="{background:background, paddingTop:padding, paddingBottom:padding}">
  4. <view class="grace-box-items" v-for="(item, index) in items" :key="index">
  5. <view class="line1" :style="{color:color[0],fontSize:fontSize[0]}">{{item[0]}}<text :style="{color:color[1],fontSize:fontSize[1]}">{{item[1]}}</text></view>
  6. <view class="line2" :style="{color:color[2],fontSize:fontSize[2]}">{{item[2]}}</view>
  7. </view>
  8. </view>
  9. </template>
  10. <script>
  11. export default {
  12. props: {
  13. items:{
  14. type : Array,
  15. default : function () {
  16. return []
  17. }
  18. },
  19. color:{
  20. type : Array,
  21. default : function () {
  22. return ['#333333', '#999999', '#999999']
  23. }
  24. },
  25. fontSize:{
  26. type : Array,
  27. default : function () {
  28. return ['36rpx', '24rpx', '24rpx']
  29. }
  30. },
  31. background : {
  32. type : String,
  33. default : ''
  34. },
  35. padding:{
  36. type : String,
  37. default : '25rpx'
  38. }
  39. }
  40. }
  41. </script>
  42. <style scoped>
  43. .grace-box-banner{padding:26rpx 0; display:flex; flex-wrap:nowrap; overflow:hidden; background:#FFF;}
  44. .grace-box-items{width:100%; justify-content:center; line-height:1.5em; text-align:center;}
  45. .grace-box-banner .line1{line-height:50rpx; overflow:hidden; text-align:center;}
  46. .grace-box-banner .line1 text{line-height:50rpx; margin-left:2px;}
  47. .grace-box-banner .line2{line-height:32rpx; text-align:center;}
  48. </style>