From 3b4f810acdcf7db659497d8085eacb21832dbba4 Mon Sep 17 00:00:00 2001
From: admin <344137771@qq.com>
Date: Wed, 14 Jan 2026 18:06:17 +0800
Subject: [PATCH] 1
---
src/page/markets/markets.vue | 100 ++++++++++++++++---------------------------------
1 files changed, 33 insertions(+), 67 deletions(-)
diff --git a/src/page/markets/markets.vue b/src/page/markets/markets.vue
index d0d3f6a..9b8382b 100644
--- a/src/page/markets/markets.vue
+++ b/src/page/markets/markets.vue
@@ -1,13 +1,7 @@
<template>
<div class="markets">
<tab-head :rightShow="false">
- <van-popover
- v-model="switchShow"
- trigger="click"
- :actions="actions"
- @select="onSelect"
- placement="bottom-end"
- >
+ <van-popover v-model="switchShow" trigger="click" :actions="actions" @select="onSelect" placement="bottom-end">
<template #reference>
<div class="switch flex-center">
<van-icon name="exchange" size=".45em" />
@@ -18,14 +12,9 @@
</tab-head>
<div class="tabs flex-between">
- <div
- class="tab_item flex-center"
- :class="{ active: item.pid == tab }"
- v-for="item in tabList"
- :key="item.pid"
- @click="tab = item.pid"
- >
- <span class="line-one">{{ item.abbreviation }}</span>
+ <div class="tab_item flex-center" :class="{ active: item.pid == tab }" v-for="item in tabList" :key="item.pid"
+ @click="tab = item.pid">
+ <span class="line-one">{{ item.name }}</span>
</div>
</div>
@@ -56,46 +45,27 @@
name: this.$t("美国")
},
{
- text: this.$t("hk1"),
- value: "HK",
- name: this.$t("hk1")
+ text: this.$t("日本"),
+ value: "JP",
+ name: this.$t("日本")
},
- {
- text: this.$t("tw"),
- value: "TW",
- name: this.$t("tw")
- },
- {
- text: this.$t("id1"),
- value: "IN",
- name: this.$t("id1")
- }
+ // {
+ // text: this.$t("hk1"),
+ // value: "HK",
+ // name: this.$t("hk1")
+ // },
+ // {
+ // text: this.$t("tw"),
+ // value: "TW",
+ // name: this.$t("tw")
+ // },
],
tabList: [],
- usList: [
- { abbreviation: "Dow Jones" },
- { abbreviation: "S&P 500" },
- { abbreviation: "NASDAQ" }
- ],
- hkList: [
- { abbreviation: "恒生指數" },
- { abbreviation: "恒生中國企業指數" },
- { abbreviation: "HSCEI Covered Call Index" }
- ],
- twList: [
- { abbreviation: "臺灣證券交易所發行量加權股價指數" },
- { abbreviation: "櫃買指數" },
- { abbreviation: "臺灣50指數" }
- ],
- inList: [
- { abbreviation: "Nifty 50 Index" },
- { abbreviation: "Nifty Bank Index" },
- { abbreviation: "Nifty Financial Services Index" }
- ],
tab: 1,
pageNum: 1,
pageSize: 10,
- kData: {}
+ kData: {},
+ times: null
};
},
components: {
@@ -106,8 +76,11 @@
},
watch: {
tab() {
- this.getIndicesAndKData();
+ this.init();
}
+ },
+ beforeDestroy() {
+ if (this.times) clearInterval(this.times);
},
computed: {
switchText() {
@@ -125,15 +98,13 @@
this.$store.commit("MARKET_CHANGE", this.actions[0]);
}
await this.getTabData();
- this.tab = this.tabList[0].pid;
},
- mounted() {},
+ mounted() { },
methods: {
// 选择
async onSelect(e) {
this.$store.commit("MARKET_CHANGE", e);
await this.getTabData();
- this.tab = this.tabList[0].pid;
},
// 获取tab数据
async getTabData() {
@@ -141,17 +112,8 @@
let data = await api.getIndicesList({
stockType
});
-
- // 数据重构
- let list = [];
- if (stockType == "US") list = this.usList;
- else if (stockType == "HK") list = this.hkList;
- else if (stockType == "TW") list = this.twList;
- else if (stockType == "IN") list = this.inList;
- this.tabList = list.map((item, index) => {
- item = { ...item, ...data.data[index + 1] };
- return item;
- });
+ this.tabList = data.data;
+ this.tab = this.tabList[1].pid;
// console.log("dadadadadad", this.tabList);
},
@@ -164,9 +126,13 @@
this.kData = data.data;
// console.log("getIndicesAndKData", this.kData);
},
- // tab切换
- tabChange() {
+ // 初始化
+ init() {
+ if (this.times) clearInterval(this.times);
this.getIndicesAndKData();
+ this.times = setInterval(() => {
+ this.getIndicesAndKData();
+ }, 2000);
}
}
};
@@ -205,7 +171,7 @@
width: 32%;
height: 0.8em;
border-radius: 0.5em;
- padding: 0 .25em;
+ padding: 0 0.25em;
span {
font-size: 0.4em;
--
Gitblit v1.9.3