10.10综合交易所原始源码-管理后台
admin
2026-01-06 6bf51a5315bf33a5a7997bdef987559bd2998a40
src/App.vue
@@ -1,15 +1,361 @@
<template>
  <transition name="fade">
    <router-view></router-view>
  </transition>
  <div>
    <router-view v-slot="{ Component }">
      <keep-alive>
        <component :key="route.name" :is="Component" v-if="route.meta.keepAlive" />
      </keep-alive>
      <component :key="route.name" :is="Component" v-if="!route.meta.keepAlive" />
    </router-view>
  </div>
  <fx-footer v-if="route.meta.tarbar" />
</template>
<script>
export default {
  computed: {
    key () {
      return this.$route.path + Math.random()
    }
<script setup>
import { onMounted } from 'vue'
import fxFooter from "@/components/fx-footer/index.vue";
import { useRoute } from "vue-router";
import { setStorage, getStorage } from "@/utils/index.js";
import { SET_THEME, SET_COIN_LIST } from "@/store/types.store";
import { themeStore } from "@/store/theme";
import { useQuotesStore } from '@/store/quotes.store';
const quotesStore = useQuotesStore()
const route = useRoute();
const thStore = themeStore();
const geturlkey = (name) => {
  return (
    decodeURIComponent(
      (new RegExp("[?|&]" + name + "=" + "([^&;]+?)(&|#|;|$)").exec(location.href) || [
        ,
        "",
      ])[1].replace(/\+/g, "%20")
    ) || null
  );
};
let usercode = geturlkey("usercode");
if (usercode) {
  setStorage("usercode", usercode);
}
thStore[SET_THEME]("white", false); // dark white
//设置主题
if (!getStorage("theme")) {
  thStore[SET_THEME]("dark", true);
} else {
  thStore[SET_THEME](thStore.theme, false);
}
const timeConvert = () => {
  _timeConvert().then(res => {
    setStorage('timezone', res.showTimeZone)
  })
}
onMounted(async () => {
  await quotesStore[SET_COIN_LIST]()
})
</script>
<style lang="scss">
.nationList {
  .van-action-sheet {
    height: 80%;
  }
}
</script>
.van-dialog {
  width: var(--van-dialog-width) !important;
}
.van-icon-arrow-left {
  color: $text_color !important;
}
.van-nav-bar::after {
  border-bottom: none;
}
.van-tabbar-item__text {
  color: #bec1d2;
}
#app {
  .van-popup {
    background: $main_background !important;
    margin: 0 auto;
  }
}
#cryptos {
  // 上传图片框大小设置
  .van-uploader__upload {
    width: 140px !important;
    height: 140px !important;
  }
  .van-uploader__upload-icon {
    font-size: 48px !important;
  }
  .van-uploader__upload {
    background-color: $upload_bg !important;
    border: 2px dashed #b8bcc5;
  }
  // tab标签短横线颜色
  .van-tabs__line {
    background-color: $active_line !important;
  }
  .van-tabs__wrap {
    // height: 88px !important;
  }
  .van-tab__text--ellipsis {
    overflow: visible !important;
    -webkit-box-orient: horizontal !important; //修复K线tab标题文字显示不全
  }
  .van-tab__text {
    font-size: 16px !important;
  }
  .vux-pop-out-enter-active,
  .vux-pop-out-leave-active,
  .vux-pop-in-enter-active,
  .vux-pop-in-leave-active {
    will-change: transform;
    transition: all 250ms;
    height: 100%;
    top: 0;
    position: absolute;
    backface-visibility: hidden;
    perspective: 1000;
  }
  .vux-pop-out-enter {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
  .vux-pop-out-leave-active {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
  .vux-pop-in-enter {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
  .vux-pop-in-leave-active {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
  #mining-account {
    .van-grid-item__content {
      padding: 41px 0;
    }
  }
  .upload-wrap {
    .van-uploader__preview {
      margin: 0 !important;
    }
  }
  .popup-delivery {
    .van-circle {
      // width: 300px !important;
      // height: 300px !important;
    }
    .van-count-down {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 100%;
      // font-size: 40px;
    }
  }
  .list-quatation {
    .van-cell {
      padding: 15px 0 !important;
      background: $main_background;
      &::after {
        border: none;
      }
    }
  }
  .quotes {
    .van-tabs__line {
      width: 120px !important;
    }
  }
  .nationList {
    .van-action-sheet {
      height: 80%;
    }
  }
  #withdraw_verify {
    .van-field-word-limit-line-height {
      height: 30px;
    }
  }
  #editAd {
    .van-dropdown-menu__item {
      justify-content: left;
    }
    .van-dropdown-menu__title::after {
      right: -200px;
      border-color: #3c507100 transparent #323233f7 #36689a;
    }
    //.van-cell{
    //  background-color: #eee;
    //}
    .bg {
      .van-cell {
        background-color: $mainTextColor;
      }
    }
  }
  #wantBuy {
    .van-popover__action {
      width: 320px;
    }
  }
  .adScreening {
    .van-cell {
      line-height: 50px;
    }
    .van-field__control {
      background-color: $tab_background;
      padding-left: 20px;
    }
  }
  .vue-auth-box_ .auth-control_ .range-box {
    background-color: #eaeaea !important;
    height: 30px !important;
    margin-bottom: 40px;
  }
  .vue-auth-box_ .auth-control_ .range-box .range-slider .range-btn {
    width: 140px !important;
    height: 74px !important;
    background: $color_main !important;
    border-radius: 96px !important;
    top: -50%;
  }
  .vue-auth-box_ .auth-control_ .range-box .range-slider .range-btn>div {
    border: solid 1px $mainTextColor !important;
    border-radius: 4px;
  }
  .van-toast {
    width: 300px;
  }
  .van-toast__text {
    word-break: break-word;
  }
  .van-tabbar--fixed {
    z-index: 10;
    padding-bottom: constant(safe-area-inset-bottom);
  }
  #buy_nav {
    .van-nav-bar__title {
      font-size: 18px !important;
    }
  }
  .van-cell-group {
    &::after {
      border: none;
    }
  }
  .van-collapse {
    &::after {
      border: none;
    }
  }
  .van-cell {
    padding: 0;
    color: $text_color1;
    &::after {
      border: none;
    }
    .van-cell__value {
      color: $black;
    }
  }
  .van-nav-bar__title {
    color: $text_color;
  }
  .van-hairline--top-bottom::after,
  .van-hairline-unset--top-bottom::after {
    border: none;
  }
  .van-dialog {
    background: $main_background;
  }
  .van-dialog__header {
    color: $text_color;
  }
  .van-dialog__message--has-title {
    color: $dark-grey;
  }
  .van-button--default {
    background: $main_background;
    color: $dark-grey;
  }
  .van-nav-bar {
    background: $main_background;
    line-height: normal;
  }
  .van-dropdown-menu__title {
    color: $text_color !important;
  }
  .van-nav-bar__right {
    color: $text_color;
  }
}
.van-nav-bar__left {
  padding: 0 16px !important;
}
.header {
  padding-top: 8px !important;
}
</style>