From 57ca8f40c4a33e7c1de314e6b24635e1fd53eafb Mon Sep 17 00:00:00 2001
From: lxf <1371462558@qq.com>
Date: Fri, 11 Jul 2025 11:56:17 +0800
Subject: [PATCH] 资金密码
---
src/views/cryptos/index.vue | 42 ++++++++++++++++++++++++++++++++++--------
1 files changed, 34 insertions(+), 8 deletions(-)
diff --git a/src/views/cryptos/index.vue b/src/views/cryptos/index.vue
index a035f16..19acbaf 100644
--- a/src/views/cryptos/index.vue
+++ b/src/views/cryptos/index.vue
@@ -42,7 +42,7 @@
</div>
</div> -->
<!-- <ex-hot :listData="hList"></ex-hot> -->
- <list-quatation :listData="qList" />
+ <list-quatation :listData="qList" @onfetchQList="fetchQList"/>
<van-popup v-model:show="item.showPopUp" style="border-radius:10px;" :close-on-click-overlay="false"
v-for="item in popupNewsList" :key="item.id">
<div class="w-350 p-20 box-border">
@@ -73,6 +73,7 @@
import { _getUnreadMsg } from '@/service/im.api'
import { _getNewsList1, _getPopupNews } from '@/service/user.api'
import { BASE_URL } from "@/config";
+import { _getCoinList } from '@/service/quotes.api';
const THEME = 'dark'
export default {
name: "HomePage",
@@ -98,7 +99,7 @@
currency: 'home/currency',
coinArr: 'home/coinArr',
hotArr: 'home/hotArr',
- userInfo: 'user/userInfo'
+ userInfo: 'user/userInfo',
}),
},
data() {
@@ -122,6 +123,7 @@
unreadMsg_timer: null,
unreadMsg_num: '',
popupNewsList: [],
+ getVal: 1,
}
},
methods: {
@@ -132,16 +134,40 @@
//console.log('\n *** \n'+unread_num*1+'\n *** \n')
})
},
- async fetchQList() { // 获取行情
- const list = await _getHomeList(this.coinArr.join(',')).catch(() => {
- //TODO: 轮询
- // this.timeout = setTimeout(() => {
- // this.fetchQList()
- // }, 1000)
+ async fetchQList(v) { // 获取行情
+ let coninArr = ''
+ // if (v) { this.getVal = v }
+ let arr = getStorage('qoutes')
+
+ // 优先用本地缓存的 coins
+ let coins = (arr && arr.coins && arr.coins.length) ? arr.coins : arr
+
+ if (coins && coins.length) {
+ // 如果本地有 coins,优先用本地
+ coins.forEach(item => {
+ coninArr += item.symbol + ','
+ })
+ } else {
+ // 如果本地没有 coins,拉取接口
+ const quotesData = await _getCoinList()
+ if (quotesData && quotesData.coins && quotesData.coins.length) {
+ quotesData.coins.forEach(item => {
+ coninArr += item.symbol + ','
+ })
+ }
+ }
+ console.log('fetchQList', v, coninArr)
+ // if()
+ const list = await _getHomeList(coninArr).catch(() => {
+ //请求失败时,1秒后重试
+ this.timeout = setTimeout(() => {
+ this.fetchQList()
+ }, 1000)
})
if (!(list instanceof Array)) {
return
}
+ // console.log('接口:_getHomeList 热门:',list)
this.loading = false
// this.qList = list.slice(0,10);
this.qList = list;
--
Gitblit v1.9.3