新币+dapp app 前端
dcc
2024-05-31 3d5dba0e5d348f567a6bd02e976cbc980d572fd5
src/components/contract-header/index.vue
@@ -13,7 +13,7 @@
              <img
                  src="data:image/png;base64,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"
                  alt="" class="w-30 h-30">
              <div class="font-25 pl-14">{{total}}</div>
              <div class="font-25 pl-14">{{total || '--'}}</div>
            </div>
          </div>
          <div>
@@ -22,29 +22,7 @@
            <button class="bg-dark-grey text-white w-150 h-50 lh-50 border-none rounded" @click="$router.push('/withdraw/withdrawPage')"> {{$t('提币')}}</button>
          </div>
        </div>
        <div class="flex justify-center before">
          <div class="flex items-center justify-center ">
            <!-- <img :src="require(`@/assets/theme/${theme}/image/icon_back.png`)" class="w-35 h-35 back" alt=""
                @click="$router.push(`/trendDetails/${symbol}`)"> -->
            <img :src="require(`@/assets/theme/${theme}/image/convert.png`)" alt="convert-img" class="w-35 h-35"
                 @click="onSidebar">
            <div class="flex pl-21 textColor" @click="onSidebar">
              <div class="font-35">{{ symbol.toUpperCase() || '--' }}/USDT</div>
              <div class="ml-15">{{ title }}</div>
            </div>
            <div class="pl-30 w-160" :class="{ 'text-green': range > 0, 'text-red': range <= 0 }">{{
                range > 0 ?
                    '+' : ''
              }}{{ range || '--' }}%
            </div>
            <!-- <img src="@/assets/image/kline.png" class="w-44 h-44 right" alt="" @click="$router.push(`/trendDetails/${symbol}`)"> -->
          </div>
          <!-- <div class="flex items-center">
              <img src="../../assets/image/public/k-line.png" alt="line-img" class="w-38 h-35"
                  @click="jump" />
          </div> -->
        </div>
        <div class="flex justify-between  pt-34">
        <div class="flex justify-between pb-64">
          <button class="tabBtn w-368 h-74 lh-74 border-none  rounded"
                  :class="selectIndex == 1 ? 'select-active' : 'no-select'" @click="changeTab(1)">
            {{ $t('永续合约') }}
@@ -53,6 +31,30 @@
                  :class="selectIndex == 2 ? 'select-active' : 'no-select'" @click="changeTab(2)">
            {{ $t('交割合约') }}
          </button>
        </div>
        <div class="flex justify-between before pb-45" >
          <div class="flex items-start justify-center ">
            <!-- <img :src="require(`@/assets/theme/${theme}/image/icon_back.png`)" class="w-35 h-35 back" alt=""
                @click="$router.push(`/trendDetails/${symbol}`)"> -->
            <img :src="require(`@/assets/theme/${theme}/image/convert.png`)" alt="convert-img" class="w-35 h-35"
                 @click="onSidebar">
            <div class="flex-column pl-21 textColor" @click="onSidebar">
              <div class="font-35">{{ symbol.toUpperCase() || '--' }}/USDT</div>
              <div class="ml-15">{{ title }}</div>
            </div>
            <div class="ml-15">{{ close }}</div>
            <div class="pl-30 w-160" :class="{ 'text-green': range > 0, 'text-red': range <= 0 }">{{
                range > 0 ?
                    '+' : ''
              }}{{ range || '--' }}%
            </div>
            <!-- <img src="@/assets/image/kline.png" class="w-44 h-44 right" alt="" @click="$router.push(`/trendDetails/${symbol}`)"> -->
          </div>
           <div class="flex items-center">
              <img src="../../assets/image/public/k-line.png" alt="line-img" class="w-38 h-35"
                  @click="jump" />
          </div>
        </div>
      </div>
    </div>
@@ -99,7 +101,8 @@
import {Popup} from "vant";
import {mapGetters} from "vuex";
import {_getHomeList} from "@/API/home.api";
import {getStorage, setStorage} from '@/utils/utis'
import {getSessionStorage, getStorage, setStorage} from '@/utils/utis'
import Axios from "@/API/assets";
export default {
  name: "contractHeader",
@@ -146,7 +149,8 @@
      //   selectIndex2:this.selectIndex,
      show: false,
      timeout: null,
      total: Number(getStorage('funds').total).toFixed(2) || '--',
      total: '',
      close: getStorage('close'),
      // title: '',
      list: [
        // { name:"BTC/USDT",close:"22042.28",change_ratio:"2.21"},
@@ -158,9 +162,20 @@
  created() {
    // this.coins = this.coinList.map(item => item.symbol)
    // console.log('this.coins', this.coins)
    this.getAssets()
  },
  methods: {
    getSessionStorage,
    getAssets() {
      Axios.GetAllAssets().then((res) => {
        const { code, data } = res
        if (code) {
          //console.log('总资产数据',data)
          this.total = data.total&&(data.total*1).toFixed(2)
        }
      })
    },
    onRoute(item) {
      if (this.$route.params.symbol !== item.symbol) {
        this.$router.push(`/perpetualContract/${item.symbol}`)
@@ -239,16 +254,20 @@
.select-active {
  background-color: transparent;
  color: white !important;
  //color: white !important;
  color: #000;
  @include themify() {
    background: themed("color_main");
    background: themed("tab_background1");
  }
  border: none;
}
.no-select {
  background-color: #e8e8e8;
  color: #868d9a;
  border: 0;
}
// 弹出层样式
@@ -269,4 +288,7 @@
.w-202 {
  width: 12.625rem;
}
.contract-header {
  background-color: #f5f5f5;
}
</style>