index.vue 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. <template>
  2. <CommonDialog ref="commonDialog" title="服务保障" :showCancel="false" confirmText="确定" @confirm="close" width="95%"
  3. :bgImage="'/pages-sell/static/service/bg.png'">
  4. <scroll-view scroll-y class="service-list">
  5. <view class="service-item" v-for="(item, index) in serviceList" :key="index">
  6. <view class="item-icon">
  7. <image :src="item.icon" class="icon"></image>
  8. <view class="item-title">{{ item.title }}</view>
  9. </view>
  10. <view class="item-desc">{{ item.desc }}</view>
  11. </view>
  12. </scroll-view>
  13. </CommonDialog>
  14. </template>
  15. <script>
  16. import CommonDialog from '@/components/common-dialog.vue';
  17. export default {
  18. name: 'ServicePopup',
  19. components: {
  20. CommonDialog
  21. },
  22. data() {
  23. return {
  24. serviceList: [
  25. {
  26. icon: '/pages-sell/static/service/icon-1.png',
  27. title: '破损包赔',
  28. desc: '若签收时发现商品破损、磨损、挤压变形等情况,可在 24 小时内申请退款,平台将在 24 小时内处理退款申请'
  29. },
  30. {
  31. icon: '/pages-sell/static/service/icon-2.png',
  32. title: '降价补差',
  33. desc: '订单付款 7 天内发现商品降价的情况,可申请补差价到余额,平台将在 24 小时内处理申请。'
  34. },
  35. {
  36. icon: '/pages-sell/static/service/icon-3.png',
  37. title: '24 小时发货',
  38. desc: '订单支付成功后 24 小时内发货,若未在 24 小时内发货可申请补差价到余额,平台将在 24 小时内处理申请。'
  39. },
  40. {
  41. icon: '/pages-sell/static/service/icon-4.png',
  42. title: '退货无忧',
  43. desc: '订单发货后 15 天内,申请退货,将自动减免 / 返还首重运费。'
  44. },
  45. {
  46. icon: '/pages-sell/static/service/icon-5.png',
  47. title: '未发货秒退',
  48. desc: '订单发货前申请退款,平台秒退款。'
  49. },
  50. {
  51. icon: '/pages-sell/static/service/icon-6.png',
  52. title: '无货必赔',
  53. desc: '订单付款后,因平台除因无法发货的订单,48 小时后可申请补偿到余额,平台将在 24 小时内处理申请。'
  54. }
  55. ]
  56. };
  57. },
  58. methods: {
  59. open() {
  60. this.$refs.commonDialog.openPopup();
  61. },
  62. close() {
  63. // commonDialog automatically closes on confirm, but if we need to manually close:
  64. // this.$refs.commonDialog.closePopup();
  65. // Since @confirm calls this close method, let's make sure it does nothing if already closed or just let it be.
  66. // Actually CommonDialog emits confirm then calls closePopup internally.
  67. // So we don't strictly need to call closePopup again, but it doesn't hurt.
  68. }
  69. }
  70. };
  71. </script>
  72. <style lang="scss" scoped>
  73. .service-list {
  74. max-height: 60vh;
  75. text-align: left;
  76. }
  77. .service-item {
  78. display: flex;
  79. flex-direction: column;
  80. margin-bottom: 24rpx;
  81. .item-icon {
  82. display: flex;
  83. align-items: center;
  84. margin-bottom: 10rpx;
  85. }
  86. .icon {
  87. width: 32rpx;
  88. height: 32rpx;
  89. margin-right: 12rpx;
  90. flex-shrink: 0;
  91. margin-top: -4rpx;
  92. }
  93. .item-title {
  94. font-size: 26rpx;
  95. font-weight: bold;
  96. color: #1D1D1D;
  97. }
  98. .item-desc {
  99. font-size: 24rpx;
  100. color: #666666;
  101. line-height: 1.5;
  102. text-align: justify;
  103. }
  104. }
  105. </style>