From bba4046da481abccecf541e76f17a2e32a4cc344 Mon Sep 17 00:00:00 2001
From: lxf <1371462558@qq.com>
Date: Thu, 10 Jul 2025 18:10:29 +0800
Subject: [PATCH] 登录界面
---
src/components/Transform/list-quotation/index.vue | 115 ++++++++++++++++++++++++++++++++++++---------------------
1 files changed, 73 insertions(+), 42 deletions(-)
diff --git a/src/components/Transform/list-quotation/index.vue b/src/components/Transform/list-quotation/index.vue
index e992434..89df0f0 100644
--- a/src/components/Transform/list-quotation/index.vue
+++ b/src/components/Transform/list-quotation/index.vue
@@ -16,20 +16,20 @@
</p>
</div>
</van-cell> -->
-
- <div class="flex items-end justify-between">
- <div class="block text-22 font-medium">{{$t('Market')}}</div>
- <div class="relative text-13">
- <!-- <div class="flex px-10 justify-between rounded-full bg-black text-white min-w-100 box-border">
- <div class="block">貨幣</div>
- <div class="i-material-symbols:arrow-drop-down-rounded"></div>
- </div> -->
- <!-- <div class="px-9 py-10 bg-black text-white flex flex-col absolute min-w-100 box-border top-25 rounded-11 leading-28" style="display: none;">
- <div>貨幣</div>
- <div>數字貨幣</div>
- <div>期貨</div>
- <div>收藏</div>
- </div> -->
+ <!-- 热门 -->
+ <div class="flex items-end justify-between" style="margin: 14px 0;">
+ <div class="block text-22 font-medium" >{{$t('Market')}}</div>
+ <div class="relative text-13" @click="toggleDropdown">
+ <div class="flex px-20 justify-between rounded-full bg-black text-white min-w-140 box-border">
+ <div class="block">{{ $t(topTitle) }}</div>
+ <van-icon name="play" style="align-content:center;transform: rotate(90deg);"/>
+ </div>
+ <div class="px-16 py-20 bg-black text-white flex flex-col absolute min-w-140 box-border top-25 rounded-11 leading-28" style="z-index:999;margin-top: 0.8rem;" v-show="isTopShow">
+ <div @click="changeType('外汇交易', 1)">{{ $t('外汇交易') }}</div>
+ <div @click="changeType('外汇交割', 2)">{{ $t('外汇交割') }}</div>
+ <!-- <div>期貨</div>
+ <div>收藏</div> -->
+ </div>
</div>
</div>
@@ -41,31 +41,31 @@
<li class="flex items-center left">
<img
:src="item.symbol ? `${HOST_URL}/symbol/${item.symbol_data}.png` : handleImage('../../../assets/loading-default.png')"
- alt="logo" class="w-72 h-72 rounded-full mr-16" />
+ alt="logo" class="w-72 h-72 mr-16" />
<p class="flex flex-col">
<span class="flex items-end font-32 flex items-center">
- <span class="textColor font-600 font-30">{{ item.symbol_data && item.symbol_data.toUpperCase() || '--'
+ <span class="textColor font-600 font-30">{{ item.name || '--'
}}</span>
- <span class="font-24 text-grey" style="position: relative; top: 1px">
+ <!-- <span class="font-24 text-grey" style="position: relative; top: 1px">
/USDT
- </span>
+ </span> -->
<!-- <span class="font-24 text-grey" style="position: relative; top: 1px">
{{ item.name && item.name.replace(item.symbol.toUpperCase(), '') || '--' }}</span> -->
</span>
- <span class="font-24 text-grey text-left">{{ $t('成交量') + ' ' + (item.amount * 1).toFixed(2) }}</span>
+ <span class="font-24 text-grey text-left">{{ (item.amount * 1).toFixed(2) }}</span>
</p>
</li>
<li class="flex flex-col items-end mid">
<p class="textColor font-32 font-600">{{ item.close || '--' }}</p>
- <p class="font-24 text-grey">{{ currency.currency_symbol }}
+ <!-- <p class="font-24 text-grey">{{ currency.currency_symbol }}
{{ item.close && item.symbol_data.toUpperCase() == 'SHIB' ? (item.close * currency.rate).toFixed(8) : (item.close *
- currency.rate).toFixed(2) || '--' }}</p>
+ currency.rate).toFixed(2) || '--' }}</p> -->
</li>
<li class="right flex items-center justify-end">
- <p class="w-153 font-31 h-71 bg-green text-white border-0 text-center btn" v-if="item.change_ratio > 0">
- +{{ item.change_ratio || (item.change_ratio === 0 ? 0 : '--') }}%</p>
+ <p class="w-153 font-31 h-71 bg-green text-white border-0 text-center btn" v-if="item.change_ratio_str > 0">
+ {{ (item.change_ratio_str === 0 ? 0 : item.change_ratio_str) }}%</p>
<p class="w-153 font-31 h-71 bg-red text-white border-0 text-center btn" v-else>
- {{ item.change_ratio || (item.change_ratio === 0 ? 0 : '--') }}%</p>
+ {{ (item.change_ratio_str === 0 ? 0 : item.change_ratio_str) }}%</p>
</li>
</ul>
</van-cell>
@@ -75,34 +75,34 @@
<ul class="flex justify-between w-full items-center" @click="onItemClick(item)">
<li class="flex items-center left">
<img :src="`${HOST_URL}/symbol/${item.symbol_data}.png`" alt="logo"
- class="w-72 h-72 rounded-full mr-16" />
+ class="w-72 h-72 mr-16" />
<p class="flex flex-col">
<span class="flex items-end font-32 flex items-center">
<span class="textColor font-600 font-30">{{ item.symbol_data && item.symbol_data.toUpperCase() || '--'
}}</span>
<!-- <span class="font-24 text-grey" style="position: relative; top: 1px">
{{ item.name && item.name.replace(item.symbol.toUpperCase(), '') || '--' }}</span> -->
- <span class="font-24 text-grey" style="position: relative; top: 1px">
+ <!-- <span class="font-24 text-grey" style="position: relative; top: 1px">
/USDT
- </span>
+ </span> -->
</span>
<span class="font-24 text-grey text-left">{{ $t('成交量') + ' ' + (item.amount * 1).toFixed(2) }}</span>
</p>
</li>
<li class="flex flex-col items-end mid">
<p class="textColor font-32 font-600">{{ item.close }}</p>
- <p class="font-24 text-grey">{{ currency.currency_symbol }} {{ item.close && item.symbol_data.toUpperCase() == 'SHIB' ? (item.close * currency.rate).toFixed(8) : (item.close *
- currency.rate).toFixed(2) || '--' }}</p>
+ <!-- <p class="font-24 text-grey">{{ currency.currency_symbol }} {{ item.close && item.symbol_data.toUpperCase() == 'SHIB' ? (item.close * currency.rate).toFixed(8) : (item.close *
+ currency.rate).toFixed(2) || '--' }}</p> -->
</li>
<li class="right flex items-center justify-end text-right">
<div v-if="active == 3" class="textColor w-182 font-700 font-24">
{{ (item.volume * 1).toFixed(2) }}
</div>
<template v-else>
- <p class="w-153 font-31 h-71 bg-green text-white border-0 text-center btn" v-if="item.change_ratio > 0">
- +{{ item.change_ratio }}%</p>
+ <p class="w-153 font-31 h-71 bg-green text-white border-0 text-center btn" v-if="item.change_ratio_str > 0 || item.change_ratio > 0">
+ +{{ item.change_ratio_str }}%</p>
<p class="w-153 font-31 h-71 bg-red text-white border-0 text-center btn" v-else>
- {{ item.change_ratio || (item.change_ratio === 0 ? 0 : '--') }}%</p>
+ {{ (item.change_ratio_str === 0 ? 0 : '--') }}%</p>
</template>
</li>
</ul>
@@ -132,6 +132,9 @@
fixDate,
HOST_URL,
active: 0,
+ isTopShow: false,
+ topTitle: '外汇交易',
+ topValue: 1,
type: 'left' //left 从左往右 right 从有王座
}
},
@@ -164,21 +167,41 @@
},
methods: {
...mapActions('home', [SET_CURRENCY]),
+ changeType(tit, val){
+ this.topTitle = tit
+ this.topValue = val
+ this.$emit('onfetchQList', val)
+ },
+ toggleDropdown(){
+ if(this.isTopShow){
+ this.isTopShow = false
+ }else{
+ this.isTopShow = true
+ }
+ },
onItemClick(item) {
- if (this.tabActive == 2) { //现货
+ if (this.topValue == 2) { //现货
+ setStorage('symbol', item.symbol)
this.$router.push({
- path: `/cryptos/trade/${item.symbol}`
+ path: `/cryptos/perpetualContract/${item.symbol}`,
+ query: { selectIndex: 2 }
});
} else {
setStorage('symbol', item.symbol)
+ // /cryptos/perpetualContract/btcusdt?selectIndex=2
+ this.$router.push({
+ path:`/cryptos/trade/${item.symbol}`,
+ // path: `/cryptos/perpetualContract/${item.symbol}`,
+ // query: { selectIndex: 2 }
+ });
// this.$router.push({
// path: `/foreign/deliveryContract/${item.symbol}`,
// query: { type: 'cryptos' }
// });
- this.$router.push({
- path: `/cryptos/perpetualContract/${item.symbol}`,
- query: { type: 'cryptos' }
- });
+ // this.$router.push({
+ // path: `/cryptos/perpetualContract/${item.symbol}`,
+ // query: { type: 'cryptos' }
+ // });
}
},
handleImage(url) {
@@ -194,9 +217,9 @@
if (val == 0) {
this.showList = [...this.listData];
} else if (val == 1) {
- this.showList = [...this.listData].sort(this.compare("change_ratio", 'up'))
+ this.showList = [...this.listData].sort(this.compare("change_ratio_str", 'up'))
} else if (val == 2) {
- this.showList = [...this.listData].sort(this.compare("change_ratio", 'down'))
+ this.showList = [...this.listData].sort(this.compare("change_ratio_str", 'down'))
} else if (val == 3) {
this.showList = [...this.listData].sort(this.compare("volume", 'up'))
}
@@ -223,9 +246,9 @@
if (this.active == 0) {
this.showList = [...this.listData];
} else if (this.active == 1) {
- this.showList = [...this.listData].sort(this.compare("change_ratio", 'up'))
+ this.showList = [...this.listData].sort(this.compare("change_ratio_str", 'up'))
} else if (this.active == 2) {
- this.showList = [...this.listData].sort(this.compare("change_ratio", 'down'))
+ this.showList = [...this.listData].sort(this.compare("change_ratio_str", 'down'))
} else if (this.active == 3) {
this.showList = [...this.listData].sort(this.compare("volume", 'up'))
}
@@ -300,4 +323,12 @@
.text-grey{
// color: #8c8c8c;
}
+
+#cryptos .list-quatation .van-cell{
+ padding: 24px !important;
+ border-radius: 1rem;
+}
+.list-quatation{
+ margin: 0 20px;
+}
</style>
--
Gitblit v1.9.3