link.vue 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. <template>
  2. <div class="page" id="page">
  3. <div class="top-title wow fadeInUp" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  4. <div class="top-container">
  5. <n-icon :component="MdToday" size="40" style="vertical-align: middle;" />
  6. <span>{{ t('common.navAboutUs.method') }}</span>
  7. </div>
  8. </div>
  9. <div class="page-nav-container wow fadeInLeft" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  10. <div class="nav-txt">
  11. <n-breadcrumb separator=">">
  12. <n-breadcrumb-item>
  13. <n-icon :component="MdHome" /><router-link to="/home">{{ t('common.navigate.home') }}</router-link>
  14. </n-breadcrumb-item>
  15. <n-breadcrumb-item>
  16. <n-icon :component="MdToday" />{{ t('common.navAboutUs.method') }}
  17. </n-breadcrumb-item>
  18. </n-breadcrumb>
  19. </div>
  20. </div>
  21. <!--研究方法-->
  22. <div class="research-show">
  23. <div class="container research-content">
  24. <div class="title wow fadeInUp" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  25. <h2>{{ t('common.navAboutUs.method') }}</h2>
  26. </div>
  27. <div class="show-box">
  28. <div class="show-img box-img01 wow fadeInLeft" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  29. <img src="@/assets/images/research-01.jpg">
  30. </div>
  31. <div class="show-desc wow fadeInRight" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  32. <p>{{ t('aboutUs.method.desc01') }}</p>
  33. </div>
  34. </div>
  35. <div class="show-box">
  36. <div class="show-desc wow fadeInLeft" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  37. <p>{{ t('aboutUs.method.desc02') }}</p>
  38. </div>
  39. <div class="show-img box-img02 wow fadeInRight" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  40. <img class="img-02" src="@/assets/images/research-02.jpg">
  41. </div>
  42. </div>
  43. <div class="show-box">
  44. <div class="show-img box-img03 wow fadeInLeft" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  45. <img src="@/assets/images/research-03.jpg">
  46. </div>
  47. <div class="show-desc wow fadeInRight" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  48. <p>{{ t('aboutUs.method.desc03') }}</p>
  49. </div>
  50. </div>
  51. <div class="report-img">
  52. <div class="img wow fadeInUp" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  53. <img v-if="lang == 'zh-CN'" src="@/assets/images/report-method.png" />
  54. <img v-else src="@/assets/images/report-method-en.png" />
  55. </div>
  56. </div>
  57. </div>
  58. </div>
  59. <!--研究细节-->
  60. <!-- <div class="research-detail">
  61. <div class="container">
  62. <div class="title wow fadeInUp" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  63. <h2>研究细节</h2>
  64. </div>
  65. <div class="img wow fadeInUp" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  66. <img src="@/assets/images/report-method.png"/>
  67. </div>
  68. </div>
  69. </div> -->
  70. <!--数据验证-->
  71. <div class="report-data">
  72. <div class="container">
  73. <div class="title wow fadeInUp" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  74. <h2>{{ t('aboutUs.data.title') }}</h2>
  75. </div>
  76. <div class="img wow fadeInUp" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  77. <img v-if="lang == 'zh-CN'" src="@/assets/images/data-valid.png" />
  78. <img v-else src="@/assets/images/data-valid-en.png" />
  79. </div>
  80. </div>
  81. </div>
  82. <!--数据来源-->
  83. <div class="report-source">
  84. <div class="container">
  85. <div class="title wow fadeInUp" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  86. <h2>{{ t('aboutUs.source.title') }}</h2>
  87. </div>
  88. <div class="desc wow fadeInLeft" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  89. <p>{{ t('aboutUs.source.desc') }}</p>
  90. </div>
  91. <div class="img wow fadeInRight" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  92. <img v-if="lang == 'zh-CN'" src="@/assets/images/report-source.png" />
  93. <img v-else src="@/assets/images/report-source-en.png" />
  94. </div>
  95. </div>
  96. </div>
  97. <!--部分数据库展示-->
  98. <div class="partial-database">
  99. <div class="container">
  100. <div class="title wow fadeInUp" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  101. <h2>{{ t('aboutUs.database.title') }}</h2>
  102. </div>
  103. <div class="db-box wow fadeInUp" data-wow-duration="2s" data-wow-delay="0s" data-wow-offset="0">
  104. <div class="img"><img src="@/assets/images/d01.png" /></div>
  105. <div class="img"><img src="@/assets/images/d02.png" /></div>
  106. <div class="img"><img src="@/assets/images/d03.png" /></div>
  107. <div class="img"><img src="@/assets/images/d04.png" /></div>
  108. <div class="img"><img src="@/assets/images/d05.png" /></div>
  109. <div class="img"><img src="@/assets/images/d06.png" /></div>
  110. <div class="img"><img src="@/assets/images/d07.png" /></div>
  111. <div class="img"><img src="@/assets/images/d08.png" /></div>
  112. <div class="img"><img src="@/assets/images/d09.png" /></div>
  113. <div class="img"><img src="@/assets/images/d10.png" /></div>
  114. <div class="img"><img src="@/assets/images/d11.png" /></div>
  115. <div class="img"><img src="@/assets/images/d12.png" /></div>
  116. <div class="img"><img src="@/assets/images/d13.png" /></div>
  117. <div class="img"><img src="@/assets/images/d14.png" /></div>
  118. <div class="img"><img src="@/assets/images/d15.png" /></div>
  119. <div class="img"><img src="@/assets/images/d16.png" /></div>
  120. <div class="img"><img src="@/assets/images/d17.png" /></div>
  121. <div class="img"><img src="@/assets/images/d18.png" /></div>
  122. <div class="img"><img src="@/assets/images/d19.png" /></div>
  123. <div class="img"><img src="@/assets/images/d20.png" /></div>
  124. <div class="img"><img src="@/assets/images/d21.png" /></div>
  125. <div class="img"><img src="@/assets/images/d22.png" /></div>
  126. <div class="img"><img src="@/assets/images/d23.png" /></div>
  127. <div class="img"><img src="@/assets/images/d24.png" /></div>
  128. <div class="img"><img src="@/assets/images/d25.png" /></div>
  129. <div class="img"><img src="@/assets/images/d26.png" /></div>
  130. <div class="img"><img src="@/assets/images/d27.png" /></div>
  131. <div class="img"><img src="@/assets/images/d28.png" /></div>
  132. <div class="img"><img src="@/assets/images/d29.png" /></div>
  133. <div class="img"><img src="@/assets/images/d30.png" /></div>
  134. <div class="img"><img src="@/assets/images/d31.png" /></div>
  135. <div class="img"><img src="@/assets/images/d32.png" /></div>
  136. <div class="img"><img src="@/assets/images/d33.png" /></div>
  137. <div class="img"><img src="@/assets/images/d34.png" /></div>
  138. <div class="img"><img src="@/assets/images/d35.png" /></div>
  139. <div class="img"><img src="@/assets/images/d36.png" /></div>
  140. <div class="img"><img src="@/assets/images/d37.png" /></div>
  141. <div class="img"><img src="@/assets/images/d38.png" /></div>
  142. <div class="img"><img src="@/assets/images/d39.png" /></div>
  143. <div class="img"><img src="@/assets/images/d40.png" /></div>
  144. <div class="img"><img src="@/assets/images/d41.png" /></div>
  145. <div class="img"><img src="@/assets/images/d42.png" /></div>
  146. </div>
  147. </div>
  148. </div>
  149. </div>
  150. </template>
  151. <script lang="ts" setup>
  152. import { useI18n } from "#imports";
  153. import { NIcon, NBreadcrumb, NBreadcrumbItem } from "naive-ui";
  154. import { MdHome, MdToday } from "@vicons/ionicons4";
  155. import { onMounted, ref } from "vue";
  156. import { useUserStore } from "@/store/user";
  157. const { t } = useI18n();
  158. const img01 = ref<string>(),
  159. img02 = ref<string>(),
  160. img03 = ref<string>();
  161. const userStore = useUserStore();
  162. const lang = userStore.getLang;
  163. onMounted(async () => {
  164. img01.value = lang == "zh-CN" ? "200px" : "290px";
  165. img02.value = lang == "zh-CN" ? "380px" : "520px";
  166. img03.value = lang == "zh-CN" ? "170px" : "230px";
  167. });
  168. useHead({
  169. title: t("common.navAboutUs.method") + "-" + t("defaultSettings.title"),
  170. viewport: "width=device-width,initial-scale=1,maximum-scale=1 ",
  171. charset: "utf-8",
  172. meta: [
  173. {
  174. hid: "keywords",
  175. name: "keywords",
  176. content: t("defaultSettings.keyword"),
  177. },
  178. {
  179. hid: "description",
  180. name: "description",
  181. content: t("defaultSettings.desc"),
  182. },
  183. ],
  184. });
  185. </script>
  186. <style lang="scss" scoped>
  187. .research-show {
  188. background-color: #fff;
  189. margin-top: 10px;
  190. .show-box {
  191. display: flex;
  192. .show-img {
  193. width: 50%;
  194. overflow: hidden;
  195. img {
  196. width: 100%;
  197. object-fit: cover;
  198. }
  199. }
  200. .box-img01 {
  201. max-height: v-bind("img01");
  202. }
  203. .box-img02 {
  204. max-height: v-bind("img02");
  205. > img {
  206. height: v-bind("img02");
  207. }
  208. }
  209. .box-img03 {
  210. max-height: v-bind("img03");
  211. }
  212. .show-desc {
  213. width: 50%;
  214. padding: 10px;
  215. > p {
  216. font-size: 16px;
  217. line-height: 30px;
  218. margin: 0;
  219. }
  220. }
  221. }
  222. .report-img {
  223. width: 100%;
  224. padding-top: 80px;
  225. img {
  226. width: 100%;
  227. }
  228. }
  229. }
  230. .report-data,
  231. .research-detail,
  232. .report-source {
  233. background-color: #fff;
  234. .img {
  235. > img {
  236. width: 100%;
  237. }
  238. }
  239. }
  240. .report-source {
  241. .desc {
  242. > p {
  243. font-size: 16px;
  244. color: #000;
  245. }
  246. }
  247. }
  248. .partial-database {
  249. background-color: #fff;
  250. border-bottom: 1px solid #dedede;
  251. padding-bottom: 20px;
  252. .db-box {
  253. display: flex;
  254. flex-wrap: wrap;
  255. border-bottom: 1px solid #dedede;
  256. border-left: 1px solid #dedede;
  257. .img {
  258. width: 16.6666%;
  259. border-top: 1px solid #dedede;
  260. border-right: 1px solid #dedede;
  261. display: flex;
  262. align-items: center;
  263. justify-content: center;
  264. padding: 0.2rem 0;
  265. > img {
  266. width: 100%;
  267. }
  268. }
  269. }
  270. }
  271. </style>