鸿宇研学生前端代码
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

158 lines
3.0 KiB

  1. <template>
  2. <view class="page__view">
  3. <navbar title="详情" leftClick @leftClick="$utils.navigateBack" />
  4. <view class="main">
  5. <view class="card">
  6. <view class="card-header">
  7. <view class="title">{{ detail.title }}</view>
  8. <view class="desc">{{ detail.createTime }}</view>
  9. </view>
  10. <view class="card-content">
  11. {{ detail.content }}
  12. </view>
  13. </view>
  14. </view>
  15. <view class="bottom">
  16. <button plain class="flex flex-column btn btn-simple" open-type="contact">
  17. <image class="icon" src="@/pages_order/static/product/icon-service.png" mode="widthFix"></image>
  18. <view>联系客服</view>
  19. </button>
  20. <button class="col btn" @click="onContactMentor">联系导师</button>
  21. </view>
  22. </view>
  23. </template>
  24. <script>
  25. import contactMentorPopup from '@/pages_order/order/components/contactMentorPopup.vue'
  26. export default {
  27. components: {
  28. contactMentorPopup,
  29. },
  30. data() {
  31. return {
  32. id: null,
  33. detail: {},
  34. }
  35. },
  36. onLoad(arg) {
  37. const { id } = arg
  38. this.id = id
  39. this.getData()
  40. },
  41. methods: {
  42. async getData() {
  43. // todo
  44. // todo: mark read
  45. },
  46. },
  47. }
  48. </script>
  49. <style scoped lang="scss">
  50. .page__view {
  51. width: 100vw;
  52. min-height: 100vh;
  53. position: relative;
  54. /deep/ .nav-bar__view {
  55. position: fixed;
  56. top: 0;
  57. left: 0;
  58. }
  59. }
  60. .main {
  61. padding: calc(var(--status-bar-height) + 160rpx) 40rpx 326rpx 40rpx;
  62. }
  63. .card {
  64. padding: 32rpx;
  65. font-family: PingFang SC;
  66. font-weight: 400;
  67. line-height: 1.4;
  68. background: #FFFFFF;
  69. border-radius: 32rpx;
  70. &-header {
  71. font-family: PingFang SC;
  72. line-height: 1.4;
  73. color: #252545;
  74. .title {
  75. font-size: 40rpx;
  76. font-weight: 500;
  77. color: #262626;
  78. }
  79. .desc {
  80. margin-top: 4rpx;
  81. font-size: 24rpx;
  82. color: #999999;
  83. }
  84. }
  85. &-content {
  86. margin-top: 24rpx;
  87. font-size: 28rpx;
  88. line-height: 1.7;
  89. color: #3B3D3D;
  90. }
  91. }
  92. .bottom {
  93. position: fixed;
  94. left: 0;
  95. bottom: 0;
  96. width: 100vw;
  97. // height: 270rpx;
  98. background: #FFFFFF;
  99. box-sizing: border-box;
  100. padding: 24rpx 40rpx;
  101. padding-bottom: calc(env(safe-area-inset-bottom) + 24rpx);
  102. box-sizing: border-box;
  103. column-gap: 32rpx;
  104. .col {
  105. flex: 1;
  106. }
  107. .btn {
  108. width: 100%;
  109. // padding: 14rpx 74rpx;
  110. padding: 14rpx 0;
  111. font-family: PingFang SC;
  112. font-weight: 500;
  113. font-size: 36rpx;
  114. line-height: 1.4;
  115. color: #252545;
  116. border: 2rpx solid #252545;
  117. border-radius: 41rpx;
  118. }
  119. .btn-simple {
  120. flex: none;
  121. width: auto;
  122. font-family: PingFang SC;
  123. font-weight: 400;
  124. font-size: 22rpx;
  125. line-height: 1.1;
  126. color: #999999;
  127. border: none;
  128. border-radius: unset;
  129. .icon {
  130. width: 52rpx;
  131. height: auto;
  132. margin-bottom: 4rpx;
  133. }
  134. }
  135. }
  136. </style>