fs-divide-list.vue 789 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <template>
  2. <view class="fs-divide-list" :class="{'gutter-v': gutter}">
  3. <fs-grid :columnNum="list.length" :padding="false">
  4. <view v-for="item in list" class="fs-divide-list-item">
  5. <fs-grid-item>
  6. <slot :item="item"></slot>
  7. </fs-grid-item>
  8. </view>
  9. </fs-grid>
  10. </view>
  11. </template>
  12. <script setup>
  13. const props = defineProps({
  14. list: {
  15. type: Array,
  16. default: () => []
  17. },
  18. gutter: Boolean
  19. })
  20. </script>
  21. <style lang="scss" scoped>
  22. .fs-divide-list{
  23. background-color: #fff;
  24. border-radius: var(--radius);
  25. &-item{
  26. position: relative;
  27. padding: 20rpx;
  28. & + &{
  29. &::before{
  30. position: absolute;
  31. left: 0;
  32. top: 50%;
  33. transform: translateY(-50%);
  34. width: 2rpx;
  35. height: 43rpx;
  36. background-color: #D9D9D9;
  37. content: '';
  38. }
  39. }
  40. }
  41. }
  42. </style>