taskDetails.vue 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. <template>
  2. <view class="content">
  3. <u-navbar
  4. title="任务详情"
  5. :autoBack="true"
  6. bgColor="transparent"
  7. :placeholder="true"
  8. :fixed="false"
  9. >
  10. </u-navbar>
  11. <view class="box_title radio-24">
  12. <view class="flex jc_between ">
  13. <view class="flex">
  14. <image class="w-88 h-88 radio-50" src="/static/logo.png" mode=""></image>
  15. <view class="mgl-24">
  16. <view class="text-28 line_1 w-360">这是一条悬赏标题</view>
  17. <view class="text-22 text-7E7E7E mgt-8">任务编号:00003</view>
  18. </view>
  19. </view>
  20. <view class="text-E02E24 text-600 text-32">
  21. +3.02元
  22. </view>
  23. </view>
  24. <view class="flex title_desc jc_between">
  25. <view class="title_item">
  26. <view class="title">5分钟</view>
  27. <view class="desc">平均审核</view>
  28. </view>
  29. <view class="title_item">
  30. <view class="title">1小时</view>
  31. <view class="desc">做单限时</view>
  32. </view>
  33. <view class="title_item">
  34. <view class="title">500</view>
  35. <view class="desc">完成人数</view>
  36. </view>
  37. <view class="title_item">
  38. <view class="title">300</view>
  39. <view class="desc">剩余名额</view>
  40. </view>
  41. </view>
  42. </view>
  43. <view class="box_desc radio-24">
  44. <view class="text-28 text-500 mgb-16">任务描述</view>
  45. <view class="text-7E7E7E text-24 lh-1_5">这是用户描述,这是用户描述这是用户描述这是用户描述
  46. 这是用户描述这是用户描述这是用户描述
  47. 这是用户描述,这是用户描述这是用户描述这是用户描述
  48. 这是用户描述这是用户描述这是用户描述</view>
  49. </view>
  50. <view class="box_step radio-24">
  51. <view class="text-28 text-500 mgb-16">任务步骤</view>
  52. <view class="mgb-40" v-for="(item,index) in steps">
  53. <view class="flex"><view class="step_num mgr-16">{{ index + 1 }}</view>{{ item.title }}</view>
  54. <image class="w-335 h-192 radio-24 mgt-20" src="/uni_modules/zmm-slider-verify/static/img/Verify.jpg" mode=""></image>
  55. </view>
  56. </view>
  57. <view class="h-200"></view>
  58. <view class="fixed_bottom fiexd_box pdx-28">
  59. <view class="w-100">
  60. <u-icon
  61. :label="collectStatus ?'已收藏':'收藏'"
  62. size="20"
  63. :color="collectStatus? '#FE6505' :'#D9D9D9'"
  64. name="star-fill"
  65. labelPos="bottom"
  66. label-size="12"
  67. :label-color="collectStatus? '#FE6505' :'#D9D9D9'"
  68. @click="collect"
  69. ></u-icon>
  70. </view>
  71. <u-button type="primary" style="width: 592rpx;border-radius: 64rpx;"
  72. @click="registration" text="我要报名"></u-button>
  73. </view>
  74. </view>
  75. </template>
  76. <script>
  77. export default {
  78. data() {
  79. return {
  80. collectStatus:true,
  81. steps:[
  82. {
  83. title:'这是任务步骤1这是任务步骤1'
  84. },
  85. {
  86. title:'这是任务步骤2'
  87. },
  88. {
  89. title:'这是任务步骤3'
  90. },
  91. {
  92. title:'这是任务步骤4'
  93. },
  94. ]
  95. }
  96. },
  97. onLoad() {
  98. },
  99. methods: {
  100. // 收藏
  101. collect(){
  102. // 调用接口
  103. uni.showToast({
  104. title: this.collectStatus?'取消收藏':'已收藏'
  105. })
  106. this.collectStatus = !this.collectStatus
  107. },
  108. // 去报名
  109. registration(){
  110. uni.showToast({
  111. title: '报名成功'
  112. })
  113. // uni.navigateTo({
  114. // url:''
  115. // })
  116. },
  117. }
  118. }
  119. </script>
  120. <style scoped lang="scss">
  121. .content{
  122. height: 568rpx;
  123. padding: 32rpx;
  124. background: linear-gradient(to bottom, #ffe3d1, #fafafa);
  125. .box_title{
  126. background-color: #ffffff;
  127. width: 100%;
  128. padding: 36rpx;
  129. .title_desc{
  130. margin-top: 48rpx;
  131. .title_item{
  132. display: flex;
  133. flex-direction: column;
  134. align-items: center;
  135. position: relative;
  136. justify-content: space-around;
  137. height: 102rpx;
  138. width: 172rpx;
  139. .title{
  140. font-size: 32rpx;
  141. }
  142. .desc{
  143. font-size: 24rpx;
  144. color: #c8c9c6;
  145. }
  146. }
  147. .title_item:not(:last-child)::after{
  148. content: '';
  149. position: absolute;
  150. right: 0rpx;
  151. top: 34rpx;
  152. height: 40rpx;
  153. width: 2rpx;
  154. background: #eee;
  155. }
  156. }
  157. }
  158. .box_desc{
  159. margin-top: 24rpx;
  160. background-color: #ffffff;
  161. padding: 32rpx;
  162. }
  163. .box_step{
  164. padding: 32rpx;
  165. margin-top: 24rpx;
  166. background-color: #ffffff;
  167. .step_num{
  168. min-width: 32rpx;
  169. max-width: 32rpx;
  170. min-height: 32rpx;
  171. max-height: 32rpx;
  172. padding: 4rpx;
  173. border-radius: 64rpx;
  174. background: #FE6505;
  175. color: #ffffff;
  176. font-size: 24rpx;
  177. text-align: center;
  178. }
  179. }
  180. }
  181. </style>