index.vue 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. <template>
  2. <view class="container">
  3. <view class="back-btn" @click="backToBefore()">
  4. <u-icon name="arrow-left" color="#fff" size="20" customStyle="margin:0 auto"></u-icon>
  5. <text class="back-text">项目查看</text>
  6. </view>
  7. <view class="main">
  8. <view class="item" v-for="item in itemList" :key="item.name" @click="goToPage(item.url)">
  9. <view class="item-name">{{item.name}}</view>
  10. <u-icon name="arrow-right"></u-icon>
  11. </view>
  12. </view>
  13. </view>
  14. </template>
  15. <script setup>
  16. import {
  17. ref
  18. } from 'vue'
  19. import {
  20. onLoad
  21. } from "@dcloudio/uni-app"
  22. function backToBefore() {
  23. uni.navigateBack({})
  24. };
  25. let itemList = ref([{
  26. name: '基本信息',
  27. url: '/pages/overdue/baseInfo/index'
  28. }, {
  29. name: '资金来源',
  30. url: '/pages/overdue/fundsSource/index'
  31. }, {
  32. name: '施工阶段计划',
  33. url: '/pages/overdue/constructionStep/index'
  34. }, {
  35. name: '核准备案资料',
  36. url: '/pages/overdue/recordData/index'
  37. }, {
  38. name: '项目开工资料',
  39. url: '/pages/overdue/startData/index'
  40. }])
  41. let id = ref(null)
  42. function goToPage(url) {
  43. uni.navigateTo({
  44. url: `${url}?id=${id.value}`
  45. })
  46. }
  47. onLoad((option) => {
  48. id.value = option.id
  49. })
  50. </script>
  51. <style lang="scss" scoped>
  52. page {
  53. height: 100%;
  54. background-color: #EAF0FA;
  55. }
  56. .container {
  57. position: relative;
  58. width: 100%;
  59. height: 100%;
  60. background: linear-gradient(180deg, #1869F6 0%, #EAF0FA 64%, #EAF0FA 100%);
  61. .back-btn {
  62. position: absolute;
  63. top: 8%;
  64. left: 4%;
  65. display: flex;
  66. font-size: 40rpx;
  67. font-weight: 500;
  68. color: #FFF;
  69. .back-text {
  70. margin-left: 28rpx;
  71. }
  72. }
  73. }
  74. .main {
  75. position: absolute;
  76. top: 14%;
  77. left: 4%;
  78. width: 92%;
  79. height: 635rpx;
  80. padding: 0 40rpx;
  81. background-color: #fff;
  82. border-radius: 40rpx;
  83. overflow: hidden;
  84. }
  85. .item {
  86. display: flex;
  87. justify-content: space-between;
  88. width: 100%;
  89. height: 20%;
  90. box-sizing: border-box;
  91. border-bottom: 2rpx solid #EAF0FA;
  92. .item-name {
  93. display: flex;
  94. flex-direction: column;
  95. justify-content: center;
  96. font-size: 32rpx;
  97. color: #343437;
  98. }
  99. }
  100. </style>