error.vue 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. <template>
  2. <Container
  3. class="body-content"
  4. title="支付失败"
  5. bgColor="#F8F8F8"
  6. :onBack="onBack"
  7. >
  8. <view class="info-area">
  9. <image
  10. class="success-icon"
  11. src="https://openwork-oss.oss-cn-shenzhen.aliyuncs.com/uploads/question/2025/06/3vShBotzJZS3S9dogDOAf1P8J6CvXW2EzE24tXq6.png"
  12. mode="aspectFill"
  13. ></image>
  14. </view>
  15. <view class="button-group">
  16. <view type="default" class="btn" @click="back">返回首页</view>
  17. </view>
  18. <view class="qr-code">
  19. <span>是遇到问题了吧</span>
  20. <span>可联系客服进行反馈</span>
  21. <div class="card">
  22. <img :src="src" show-menu-by-longpress class="img" alt="">
  23. <span>可长按识别二维码</span>
  24. </div>
  25. </view>
  26. </Container>
  27. </template>
  28. <script setup>
  29. import Container from "../../components/Container/Container.vue";
  30. import { ref } from "vue";
  31. import { router } from "../../utils/router";
  32. const onBack = () => new Promise((resolve) => resolve("/pages/user/index"));
  33. const back = () => {
  34. router.switchTab("/pages/user/index");
  35. };
  36. const src = ref("https://openwork-oss.oss-cn-shenzhen.aliyuncs.com/uploads/question/2025/06/XTYZzM0uKjmKGV2cXN3QC5R1icHXmQDo10mUNZ6T.png");
  37. </script>
  38. <style scoped lang="scss">
  39. .qr-code {
  40. width: 100%;
  41. height: 100%;
  42. margin-top: 20px;
  43. display: flex;
  44. flex-direction: column;
  45. align-items: center;
  46. color: $error;
  47. gap: 12rpx;
  48. .card {
  49. margin:10rpx auto 0;
  50. display: flex;
  51. align-items: center;
  52. justify-content: center;
  53. flex-direction: column;
  54. padding: 80rpx;
  55. background-color: #fff;
  56. gap: 40rpx;
  57. border-radius: 40rpx;
  58. width: calc(100% - 64rpx);
  59. box-sizing: border-box;
  60. color: #333;
  61. .img {
  62. width: 181px;
  63. height: 181px;
  64. }
  65. }
  66. }
  67. .success-icon {
  68. width: 180rpx;
  69. height: 180rpx;
  70. margin-bottom: 80rpx;
  71. margin-top: 50rpx;
  72. }
  73. /* 中间说明区域 */
  74. .info-area {
  75. flex: 2;
  76. text-align: center;
  77. margin: 0 20rpx;
  78. }
  79. .info-text {
  80. font-size: 28rpx;
  81. color: #666;
  82. }
  83. /* 底部按钮组 */
  84. .button-group {
  85. display: flex;
  86. flex-direction: column;
  87. justify-content: center;
  88. }
  89. .btn {
  90. border-radius: 40rpx;
  91. font-size: 32rpx;
  92. line-height: 84rpx;
  93. display: block;
  94. border: 1rpx solid green;
  95. text-align: center;
  96. width: 94%;
  97. margin: auto;
  98. }
  99. </style>