info-detail.vue 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. <template>
  2. <div class="main">
  3. <div class="content">
  4. <sub-header />
  5. <div class="left">
  6. <hero-sub-title />
  7. <div class="detail">
  8. <!-- {{ detail }} -->
  9. <div class="detail-wrapper">
  10. <div class="back" @click="$router.go(-1)"></div>
  11. <div class="info">
  12. <div class="show-case"></div>
  13. <h3 class="title">湘鄂赣省工农银行洋银叁角纸币</h3>
  14. <div class="label-list">
  15. <span>时代:土地革命时期</span>
  16. <span>来源:澄潭三星</span>
  17. <span>质地:纸质</span>
  18. <span>级别:二级</span>
  19. </div>
  20. <div class="text">
  21. 这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简
  22. 这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简
  23. 这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简
  24. 这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简
  25. 这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简
  26. 这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简
  27. 这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简
  28. 这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简
  29. 这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简
  30. 这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简介这是一段简
  31. </div>
  32. </div>
  33. </div>
  34. </div>
  35. </div>
  36. <side-menu />
  37. </div>
  38. </div>
  39. </template>
  40. <script setup>
  41. import { watchEffect, ref, onMounted, computed } from "vue";
  42. import { useFullscreen } from "@vueuse/core";
  43. import subHeader from "../components/subHeader";
  44. import sideMenu from "../components/sideMenu";
  45. import heroSubTitle from "../components/heroSubTitle";
  46. import { useInfoStore } from "../store/info";
  47. const title = ref("detail");
  48. const infoStore = useInfoStore();
  49. const detail = computed(() => infoStore.detail);
  50. const props = defineProps({
  51. id: {
  52. type: [String, Number],
  53. default: () => null,
  54. required: true,
  55. },
  56. });
  57. watchEffect(() => {
  58. document.title = title.value;
  59. if (props.id) {
  60. infoStore.getDetail(props.id);
  61. }
  62. });
  63. </script>
  64. <style lang="scss" scoped>
  65. .detail {
  66. --main-show-case-background: #ddd5d5;
  67. --main-detail-margin: 1.875rem;
  68. --main-detail-padding: 1.875rem;
  69. // box-shadow: var(--main-box-shadow);
  70. margin: var(--main-detail-margin);
  71. margin-bottom: 0;
  72. flex: 1;
  73. border-radius: 0.8125rem;
  74. background: transparent;
  75. // padding: 2rem 3rem 4rem 3rem;
  76. background-image: var(--main-detail-background-img);
  77. background-size: cover;
  78. background-position: top 100%;
  79. background-repeat: no-repeat;
  80. overflow: hidden;
  81. .detail-wrapper {
  82. display: block;
  83. width: 100%;
  84. flex: 1;
  85. height: calc(100% - var(--main-detail-margin) - 10px);
  86. margin-top: var(--main-detail-margin);
  87. overflow-y: scroll;
  88. &::-webkit-scrollbar {
  89. display: none;
  90. }
  91. }
  92. .back {
  93. background-image: url("/img/back_arrow.png");
  94. width: 7.5rem;
  95. height: 1.875rem;
  96. background-repeat: no-repeat;
  97. background-size: contain;
  98. margin-bottom: 0.75rem;
  99. margin-left: 3rem;
  100. }
  101. .info {
  102. max-width: 66.8125rem;
  103. margin: 0 auto;
  104. font-size: 1.25rem;
  105. padding-bottom:5rem;
  106. .title {
  107. font-size: 1.875rem;
  108. line-height: 3.75rem;
  109. margin: 1.2rem 0;
  110. }
  111. .label-list {
  112. margin-bottom: 1.5rem;
  113. display: inline-flex;
  114. flex-direction: row;
  115. justify-content: space-between;
  116. gap: 0 1.875rem;
  117. span {
  118. padding-left: 1.5625rem;
  119. background-image: url("/img/dot.png");
  120. background-repeat: no-repeat;
  121. background-size: 1.25rem 1.25rem;
  122. background-position: left center;
  123. }
  124. }
  125. .text {
  126. font-weight: 400;
  127. color: #6e6e6e;
  128. line-height: 2.125rem;
  129. font-size: 1.25rem;
  130. }
  131. }
  132. .show-case {
  133. max-width: 66.8125rem;
  134. height: 34.1875rem;
  135. background: var(--main-show-case-background);
  136. }
  137. }
  138. </style>