index.vue 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. <template>
  2. <view class="page-wrap">
  3. <view class="app-item" v-for="(item, index) in navList" :key="index" @click="handleNav(item.value)">
  4. <view :class="'icon icon-' + item.value">
  5. <image :src="`../../static/svg/app_${item.value}.svg`"></image>
  6. </view>
  7. <view class="text">{{ item.label }}</view>
  8. </view>
  9. </view>
  10. </template>
  11. <script>
  12. export default {
  13. components: {},
  14. data() {
  15. return {
  16. navList: [
  17. {
  18. label: '记账报税',
  19. value: 1
  20. },
  21. {
  22. label: '税控托管',
  23. value: 2
  24. },
  25. {
  26. label: '社保代缴',
  27. value: 3
  28. },
  29. {
  30. label: '其他服务',
  31. value: 4
  32. },
  33. {
  34. label: '我的合同',
  35. value: 5
  36. },
  37. {
  38. label: '财务管家',
  39. value: 6
  40. },
  41. {
  42. label: '设置',
  43. value: 7
  44. },
  45. {
  46. label: '我的消息',
  47. value: 8
  48. },
  49. {
  50. label: '意见反馈',
  51. value: 9
  52. },
  53. {
  54. label: '服务电话',
  55. value: 10
  56. }
  57. ]
  58. };
  59. },
  60. methods: {
  61. handleNav(val) {
  62. let url = '';
  63. switch (val) {
  64. case 1:
  65. url = 'accounting/index';
  66. break;
  67. }
  68. uni.navigateTo({
  69. url
  70. });
  71. }
  72. }
  73. };
  74. </script>
  75. <style lang="scss" scoped>
  76. .page-wrap {
  77. min-height: 100%;
  78. box-sizing: border-box;
  79. background: #fff;
  80. display: flex;
  81. flex-wrap: wrap;
  82. align-content: flex-start;
  83. padding: 27.47rpx 13.74rpx;
  84. box-sizing: border-box;
  85. }
  86. .app-item {
  87. flex: 0 0 25%;
  88. display: flex;
  89. flex-direction: column;
  90. align-items: center;
  91. margin-bottom: 27.47rpx;
  92. .icon {
  93. width: 118.13rpx;
  94. height: 118.13rpx;
  95. border-radius: 50%;
  96. background: #f7f7f7;
  97. display: flex;
  98. align-items: center;
  99. justify-content: center;
  100. image {
  101. width: 68.68rpx;
  102. height: 68.68rpx;
  103. }
  104. &-1 {
  105. background: #ff7356;
  106. }
  107. &-2 {
  108. background: #06d276;
  109. }
  110. &-3 {
  111. background: #52abfd;
  112. }
  113. &-4 {
  114. background: #fcb203;
  115. image {
  116. width: 89.29rpx;
  117. height: 89.29rpx;
  118. }
  119. }
  120. &-5 {
  121. background: #566c8b;
  122. }
  123. &-6 {
  124. background: #4484ae;
  125. }
  126. &-7 {
  127. background: #889fff;
  128. image {
  129. width: 82.42rpx;
  130. height: 82.42rpx;
  131. margin-left: 27.47rpx;
  132. }
  133. }
  134. &-8 {
  135. background: #f7922a;
  136. }
  137. &-9 {
  138. background: #1ed2c7;
  139. image {
  140. width: 82.42rpx;
  141. height: 82.42rpx;
  142. }
  143. }
  144. &-10 {
  145. background: #fcb203;
  146. }
  147. }
  148. .text {
  149. font-size: 24.73rpx;
  150. margin-top: 13.74rpx;
  151. }
  152. }
  153. </style>