From c7985a8f8bd1d4276dd89c3362e1e2592eaa6104 Mon Sep 17 00:00:00 2001 From: hongxilin <17663930442@163.com> Date: Thu, 30 Oct 2025 18:33:00 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9C=B0=E5=9B=BE=E6=8C=87=E6=95=B0=E6=A0=87?= =?UTF-8?q?=E7=AD=BE=E6=8E=A5=E5=85=A5=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/marketSituation/marketOverview.vue | 62 +++++++++++++++++++++++++++----- 1 file changed, 54 insertions(+), 8 deletions(-) diff --git a/pages/marketSituation/marketOverview.vue b/pages/marketSituation/marketOverview.vue index 8627114..6dcd1cf 100644 --- a/pages/marketSituation/marketOverview.vue +++ b/pages/marketSituation/marketOverview.vue @@ -6,10 +6,10 @@ - 道琼斯{{ INDU.value }} - 纳斯达克{{ NDX.value }} - 恒生指数{{ HSI.value }} - 上证指数{{ CN.value }} + 道琼斯{{ judgeSymbol(INDU.value) }} + 纳斯达克{{ judgeSymbol(NDX.value) }} + 恒生指数{{ judgeSymbol(HSI.value) }} + 上证指数{{ judgeSymbol(CN.value) }} @@ -64,10 +64,10 @@ const contentHeight = ref(0); const headerHeight = ref(0); // 动态计算的header高度 const isWarnTextOverflow = ref(false); // warn文字是否溢出 -const INDU = ref({stockName: "道琼斯",stockCode: "INDU",value: ""}); -const NDX = ref({stockName: "纳斯达克",stockCode: "NDX",value: ""}); -const HSI = ref({stockName: "恒生指数",stockCode: "HSI",value: ""}); -const CN = ref({stockName: "上证指数",stockCode: "1A0001",value: ""}); +const INDU = ref({ stockName: "道琼斯", stockCode: "INDU", value: "" }); +const NDX = ref({ stockName: "纳斯达克", stockCode: "513300", value: "" }); +const HSI = ref({ stockName: "恒生指数", stockCode: "HSI", value: "" }); +const CN = ref({ stockName: "上证指数", stockCode: "1A0001", value: "" }); const pageIndex = ref(0); const scrollToView = ref(""); @@ -86,6 +86,10 @@ const warnTextClass = computed(() => { const globalIndexArray = ref([]); +const judgeSymbol = (num) => { + return num[0] === "-" ? num : "+" + num; +}; + // 搜索输入事件 const onSearchInput = (e) => { searchValue.value = e.detail.value; @@ -369,6 +373,27 @@ const parseStockData = (message) => { changePercent: ((100 * (stockDataArray[item.stockCode][0].current_price - stockDataArray[item.stockCode][0].pre_close)) / stockDataArray[item.stockCode][0].pre_close).toFixed(2) + "%", isRising: stockDataArray[item.stockCode][0].current_price - stockDataArray[item.stockCode][0].pre_close >= 0, })); + + if (stockDataArray[INDU.value.stockCode][0]) { + INDU.value.value = ((100 * (stockDataArray[INDU.value.stockCode][0].current_price - stockDataArray[INDU.value.stockCode][0].pre_close)) / stockDataArray[INDU.value.stockCode][0].pre_close).toFixed(2) + "%"; + } else { + console.log("INDU不存在"); + } + if (stockDataArray[NDX.value.stockCode][0]) { + NDX.value.value = ((100 * (stockDataArray[NDX.value.stockCode][0].current_price - stockDataArray[NDX.value.stockCode][0].pre_close)) / stockDataArray[NDX.value.stockCode][0].pre_close).toFixed(2) + "%"; + } else { + console.log("NDX不存在"); + } + if (stockDataArray[HSI.value.stockCode][0]) { + HSI.value.value = ((100 * (stockDataArray[HSI.value.stockCode][0].current_price - stockDataArray[HSI.value.stockCode][0].pre_close)) / stockDataArray[HSI.value.stockCode][0].pre_close).toFixed(2) + "%"; + } else { + console.log("HSI不存在"); + } + if (stockDataArray[CN.value.stockCode][0]) { + CN.value.value = ((100 * (stockDataArray[CN.value.stockCode][0].current_price - stockDataArray[CN.value.stockCode][0].pre_close)) / stockDataArray[CN.value.stockCode][0].pre_close).toFixed(2) + "%"; + } else { + console.log("CN不存在"); + } } } else if ((typeof message === "string" && message.includes('{"count')) || isMorePacket.batch_real_time) { if (typeof message === "string" && message.includes('{"count')) { @@ -415,6 +440,27 @@ const parseStockData = (message) => { changePercent: ((100 * (stockDataArray[item.stockCode][0].current_price - stockDataArray[item.stockCode][0].pre_close)) / stockDataArray[item.stockCode][0].pre_close).toFixed(2) + "%", isRising: stockDataArray[item.stockCode][0].current_price - stockDataArray[item.stockCode][0].pre_close >= 0, })); + + if (stockDataArray[INDU.value.stockCode][0]) { + INDU.value.value = ((100 * (stockDataArray[INDU.value.stockCode][0].current_price - stockDataArray[INDU.value.stockCode][0].pre_close)) / stockDataArray[INDU.value.stockCode][0].pre_close).toFixed(2) + "%"; + } else { + console.log("INDU不存在"); + } + if (stockDataArray[NDX.value.stockCode][0]) { + NDX.value.value = ((100 * (stockDataArray[NDX.value.stockCode][0].current_price - stockDataArray[NDX.value.stockCode][0].pre_close)) / stockDataArray[NDX.value.stockCode][0].pre_close).toFixed(2) + "%"; + } else { + console.log("NDX不存在"); + } + if (stockDataArray[HSI.value.stockCode][0]) { + HSI.value.value = ((100 * (stockDataArray[HSI.value.stockCode][0].current_price - stockDataArray[HSI.value.stockCode][0].pre_close)) / stockDataArray[HSI.value.stockCode][0].pre_close).toFixed(2) + "%"; + } else { + console.log("HSI不存在"); + } + if (stockDataArray[CN.value.stockCode][0]) { + CN.value.value = ((100 * (stockDataArray[CN.value.stockCode][0].current_price - stockDataArray[CN.value.stockCode][0].pre_close)) / stockDataArray[CN.value.stockCode][0].pre_close).toFixed(2) + "%"; + } else { + console.log("CN不存在"); + } } } else { // 没有通过JSON解析判断,说明不是需要的数据