task_tab.vue 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. <template>
  2. <view class="task-tab">
  3. <scroll-view class="scroll-Y row" scroll-x="true">
  4. <view class="column-c p-lr40" v-for="(item,index) in navList" :key="index" @click="setType(index)">
  5. <image class="wh-60 r-circle" :class="index===current?'double-border':''" :src="item.icon" mode="">
  6. </image>
  7. <view class="m-t16 sys-size-24 text-center sys-weight-600" :class="{'default-text':index===current}">
  8. {{item.name}}
  9. </view>
  10. </view>
  11. </scroll-view>
  12. </view>
  13. </template>
  14. <script>
  15. export default {
  16. data() {
  17. return {
  18. current: 0,
  19. navList: [{
  20. name: '基础信息',
  21. icon: '/static/img/task/task-all.png'
  22. }, {
  23. name: '资产/征信',
  24. icon: '/static/img/task/task-repayment.png'
  25. }, {
  26. name: '跟进记录',
  27. icon: '/static/img/task/task-business.png'
  28. }, {
  29. name: '审核进度',
  30. icon: '/static/img/task/task-money.png'
  31. }, ]
  32. }
  33. },
  34. methods: {
  35. setType(current) {
  36. if (current !== this.current) {
  37. this.current = current
  38. }
  39. },
  40. }
  41. }
  42. </script>
  43. <style lang="scss" scoped>
  44. .task-tab {
  45. padding: 34rpx 20rpx 20rpx 20rpx;
  46. border-radius: 30rpx;
  47. background: #fff;
  48. }
  49. .from-title {
  50. // height: 90rpx;
  51. // position: relative;
  52. background: #fff;
  53. // background: linear-gradient(180deg, rgba(255, 255, 255, 0.57) 0%, rgba(255, 255, 255, 0.86) 100%);
  54. .title-bg {
  55. position: absolute;
  56. top: 0;
  57. left: 0;
  58. transition: .5s ease;
  59. z-index: 1;
  60. background-image: url("/static/img/test/tab-bg.png");
  61. background-repeat: no-repeat;
  62. background-size: 100% auto;
  63. height: 103rpx;
  64. width: 161rpx;
  65. bottom: 0;
  66. .bg-icon {
  67. margin-top: 68rpx;
  68. margin-left: 63rpx;
  69. width: 45rpx;
  70. height: 4rpx;
  71. }
  72. }
  73. .title-bg-two {
  74. left: 25%;
  75. transition: .5s ease;
  76. }
  77. .title-bg-three {
  78. left: 50%;
  79. transition: .5s ease;
  80. }
  81. .title-bg-four {
  82. left: 75%;
  83. transition: .5s ease;
  84. }
  85. .title-list {
  86. display: flex;
  87. justify-content: space-between;
  88. z-index: 2;
  89. position: relative;
  90. .title-text {
  91. // width: 25%;
  92. // height: 90rpx;
  93. // line-height: 90rpx;
  94. color: #444444;
  95. }
  96. .default-text {
  97. color: #10B261;
  98. }
  99. }
  100. }
  101. .data-box {
  102. margin-top: 20rpx;
  103. .image {
  104. width: 90vw;
  105. }
  106. }
  107. .double-border {
  108. // position: relative;
  109. // width: 60rpx;
  110. // height: 60rpx;
  111. // background-color: #fff;
  112. // border: 2px solid #0FB160;
  113. // /* 外边框 */
  114. // box-sizing: border-box;
  115. // border: solid 2px #fff;
  116. // outline: solid 2px #888;
  117. // border-radius: 50%;
  118. box-shadow: 0 0 0 6rpx #fff, 0 0 0 12rpx #10B261;
  119. }
  120. // .double-border::before {
  121. // content: '';
  122. // position: absolute;
  123. // top: -5px;
  124. // /* 调整边框的大小 */
  125. // left: -5px;
  126. // right: -5px;
  127. // bottom: -5px;
  128. // border: 1px solid #fff;
  129. // /* 内边框 */
  130. // pointer-events: none;
  131. // /* 防止影响鼠标事件 */
  132. // }
  133. </style>