From 732c30b33f782c2d2ebb62eacda2fb7a453a7ecd Mon Sep 17 00:00:00 2001
From: admin <344137771@qq.com>
Date: Sat, 31 Jan 2026 11:01:45 +0800
Subject: [PATCH] 1
---
src/page/home/homeIndex.vue | 132 +++++++++++++++++++++-----------------------
1 files changed, 63 insertions(+), 69 deletions(-)
diff --git a/src/page/home/homeIndex.vue b/src/page/home/homeIndex.vue
index 01b2e46..086dce9 100644
--- a/src/page/home/homeIndex.vue
+++ b/src/page/home/homeIndex.vue
@@ -1,13 +1,7 @@
<template>
<div class="home_index">
<tab-head>
- <van-popover
- v-model="languageShow"
- trigger="click"
- :actions="actions"
- @select="onSelect"
- placement="bottom-end"
- >
+ <van-popover v-model="languageShow" trigger="click" :actions="actions" @select="onSelect" placement="bottom-end">
<template #reference>
<div class="multilingual">
<img src="../../assets/img/language.svg" alt="" />
@@ -47,6 +41,21 @@
<span>{{ $t("理财基金") }}</span>
</div>
</div>
+ <!-- <div class="swiper-slide">
+ <div class="nav_item flex-start" @click="czts">
+ <img src="@/assets/img/充值缴费.png" alt="" />
+ <span>{{ $t("hj172") }}</span>
+ </div>
+ </div>
+ <div class="swiper-slide">
+ <div
+ class="nav_item flex-start"
+ @click="toPage('/authentications')"
+ >
+ <img src="@/assets/img/kyc.png" alt="" />
+ <span>KYC</span>
+ </div>
+ </div> -->
</div>
</div>
</div>
@@ -58,15 +67,24 @@
</div>
<div class="flex-between navs">
<div class="nav_item" v-for="item in usDataStockBeans" :key="item.id">
- <index-component
- :ids="'a' + item.id"
- :dataObj="item"
- ></index-component>
+ <index-component :ids="'a' + item.id" :dataObj="item"></index-component>
</div>
</div>
</div>
<div class="subheading bg-white" style="margin-top: 0.25em">
+ <div class="subheading_title">
+ <img src="../../assets/img/iconmonstr-chart-5.png" alt="" />
+ <span>{{ $t("日股指数") }}</span>
+ </div>
+ <div class="flex-between navs">
+ <div class="nav_item" v-for="item in jpDataStockBeans" :key="item.id">
+ <index-component :ids="'b' + item.id" :dataObj="item"></index-component>
+ </div>
+ </div>
+ </div>
+
+ <!-- <div class="subheading bg-white" style="margin-top: 0.25em">
<div class="subheading_title">
<img src="../../assets/img/iconmonstr-chart-5.png" alt="" />
<span>{{ $t("hksi") }}</span>
@@ -79,9 +97,9 @@
></index-component>
</div>
</div>
- </div>
+ </div> -->
- <div class="subheading bg-white" style="margin-top: 0.25em">
+ <!-- <div class="subheading bg-white" style="margin-top: 0.25em">
<div class="subheading_title">
<img src="../../assets/img/iconmonstr-chart-5.png" alt="" />
<span>{{ $t("tsi") }}</span>
@@ -94,22 +112,8 @@
></index-component>
</div>
</div>
- </div>
+ </div> -->
- <div class="subheading bg-white" style="margin-top: 0.25em">
- <div class="subheading_title">
- <img src="../../assets/img/iconmonstr-chart-5.png" alt="" />
- <span>{{ $t("ni") }}</span>
- </div>
- <div class="flex-between navs">
- <div class="nav_item" v-for="item in inDataStockBeans" :key="item.id">
- <index-component
- :ids="'b' + item.id"
- :dataObj="item"
- ></index-component>
- </div>
- </div>
- </div>
<div class="subheading bg-white" style="margin-top: 0.25em">
<div class="subheading_title">
@@ -117,11 +121,7 @@
<span>{{ $t("hj6") }}</span>
</div>
- <news-item
- :item="item"
- v-for="item in newsList"
- :key="item.id"
- ></news-item>
+ <news-item :item="item" v-for="item in newsList" :key="item.id"></news-item>
<div class="more flex-center" @click="$router.push('/new-list')">
<span>{{ $t("更多新闻") }}</span>
@@ -132,36 +132,24 @@
</template>
<script>
+import { Toast } from "vant";
import tabHead from "../../components/tabHead.vue";
import NewsItem from "./components/newsItem.vue";
import indexComponent from "../../components/index-component.vue";
import Echart from "./components/echart.vue";
import * as api from "@/axios/api";
+import { languageOptions } from "@/config/languageOptions";
export default {
name: "homeIndex",
data() {
return {
languageShow: false, // 语言选择
// 多语言配置
- actions: [
- {
- text: "English",
- lang: "en"
- },
- {
- text: "中文(繁体)",
- lang: "zh-Hant"
- },
- {
- text: "हिंदी",
- lang: "hi"
- }
- ],
+ actions: languageOptions,
newsList: [],
- hkDataStockBeans: [],
- twDataStockBeans: [],
- inDataStockBeans: [],
- usDataStockBeans: []
+ jpDataStockBeans: [],
+ usDataStockBeans: [],
+ times: null
};
},
components: {
@@ -171,7 +159,10 @@
NewsItem
},
mounted() {
- this.getData();
+ this.init();
+ },
+ beforeDestroy() {
+ if (this.times) clearInterval(this.times);
},
methods: {
// 选择语言
@@ -184,37 +175,41 @@
if (typeof type == "string") type = 1;
// let data = await api.queryNewsList(type);
},
+ // 初始化
+ init() {
+ this.getData();
+ this.times = setInterval(() => {
+ this.getData();
+ }, 2000);
+ },
// 获取首页数据
async getData() {
let data = await api.getHomePageData();
this.newsList = data.data.newsList;
if (data.status == 0) {
- this.twDataStockBeans = data.data.twDataStockBeans.map(item => {
+ let usLIst = data.data.usDataStockBeans || []
+ this.usDataStockBeans = usLIst.map(item => {
item.kData = item.kdata;
return item;
});
- this.inDataStockBeans = data.data.inDataStockBeans.map(item => {
+ let jpLIst = data.data.jpDataStockBeans || []
+ this.jpDataStockBeans = jpLIst.map(item => {
item.kData = item.kdata;
return item;
});
- this.hkDataStockBeans = data.data.hkDataStockBeans.map(item => {
- item.kData = item.kdata;
- return item;
- });
-
- this.usDataStockBeans = data.data.usDataStockBeans.map(item => {
- item.kData = item.kdata;
- return item;
- });
}
},
// 跳转
toPage(url) {
if (!url) return;
this.$router.push(url);
+ },
+ // 充值提示
+ czts() {
+ Toast(this.$t("充值提示"));
}
}
};
@@ -259,7 +254,7 @@
span {
font-size: 0.5em;
line-height: 0.5em;
- font-weight: 600;
+ font-weight: 500;
}
}
@@ -290,8 +285,8 @@
padding: 0 0.25em 0 0.25em;
.swiper-slide {
- width: 2.1875em;
- height: 2.5em;
+ width: 2.2em;
+ height: 2.4em;
.nav_item {
background-color: #fff;
@@ -299,11 +294,10 @@
width: 100%;
height: 100%;
flex-direction: column;
- padding-top: 0.25em;
- padding: 0.25em 0.15em 0;
+ padding: 0.45em 0.15em 0;
img {
- width: 0.75em;
+ width: 0.6em;
margin-bottom: 0.25em;
}
--
Gitblit v1.9.3