| | |
| | | <template> |
| | | <div class="wrapper"> |
| | | <div class="page_content"> |
| | | <div style="padding: 0 0.264rem;font-size: 24px;font-weight: 500;">SFM Pro</div> |
| | | <div style="padding: 0 0.264rem;font-size: 24px;font-weight: 500;">CARLYLEJP</div> |
| | | <div class="center_tabs"> |
| | | <div class="banner_top"> |
| | | <van-swipe class="my-swipe" :autoplay="5000" indicator-color="white"> |
| | | <van-swipe-item |
| | | v-for="(item, index) in bannerImgsArr" |
| | | @click="handleBannerClick(index)" |
| | | :key="index" |
| | | > |
| | | <img style="width: 100%; height: 146px" :src="item.img" alt /> |
| | | <van-swipe-item style="height: 160px;" v-for="(item, index) in bannerImgsArr" |
| | | @click="handleBannerClick(index)" :key="index"> |
| | | <img style=" width: 100%;height: 100%;" :src="item.img" alt /> |
| | | </van-swipe-item> |
| | | </van-swipe> |
| | | </div> |
| | |
| | | <li @click="$router.push('/trading-list?type=DZ')"> |
| | | <div class="link"> |
| | | <div class="icon"> |
| | | <img |
| | | src="../../assets/home/block_trades.png" |
| | | alt="" |
| | | /> |
| | | <img src="../../assets/home/block_trades.png" alt="" /> |
| | | </div> |
| | | <div class="name">{{ $t("hj621") }}</div> |
| | | </div> |
| | |
| | | <li @click="$router.push('/favorites')"> |
| | | <div class="link"> |
| | | <div class="icon"> |
| | | <img |
| | | src="../../assets/home/ipo.png" |
| | | alt="" |
| | | /> |
| | | <img src="../../assets/home/ipo.png" alt="" /> |
| | | </div> |
| | | <div class="name">IPO{{ $t("申购") }}</div> |
| | | </div> |
| | |
| | | <li @click="$router.push('/smart_intraday')"> |
| | | <div class="link"> |
| | | <div class="icon"> |
| | | <img |
| | | src="../../assets/home/stock_recharge.png" |
| | | alt="" |
| | | /> |
| | | <img src="../../assets/home/stock_recharge.png" alt="" /> |
| | | </div> |
| | | <div class="name">{{ $t("智能日内") }}</div> |
| | | </div> |
| | |
| | | </div> |
| | | <div class="scroll-item_top_right">{{item.symbol}}</div> |
| | | </div> |
| | | <div style="margin-bottom: 15px;text-align: center;color: #137D68;font-size: 12px;font-weight: bold;">{{ item.last }}</div> |
| | | <div style="margin-bottom: 25px;text-align: center;color: #C8302F;font-size: 12px;font-weight: bold;">{{ item.chg }}({{item.chgPct}}%)</div> |
| | | <div style="margin-bottom: 15px;text-align: center;color: #137D68;font-size: 12px;font-weight: bold;"> |
| | | {{ item.last }}</div> |
| | | <div style="margin-bottom: 25px;text-align: center;color: #C8302F;font-size: 12px;font-weight: bold;"> |
| | | {{ item.chg }}({{item.chgPct}}%)</div> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="fg"></div> --> |
| | |
| | | <div class="title-box"> |
| | | <div class="title">{{ $t("資訊") }}</div> |
| | | </div> |
| | | <mt-tab-container |
| | | v-model="news" |
| | | :swipeable="true" |
| | | > |
| | | <mt-tab-container-item |
| | | v-for="(items, index) in newListHeader" |
| | | :id="items.id" |
| | | :key="index" |
| | | > |
| | | <mt-tab-container v-model="news" :swipeable="true"> |
| | | <mt-tab-container-item v-for="(items, index) in newListHeader" :id="items.id" :key="index"> |
| | | <div class="news-content"> |
| | | <div style="display: flex;align-items: normal;border-bottom:1px solid #cacaca;padding-bottom: 10px;margin-top:10px;justify-content: space-between;" |
| | | class="" |
| | | v-for="(item, inde) in items.data" |
| | | :key="inde" |
| | | @click=" |
| | | <div |
| | | style="display: flex;align-items: normal;border-bottom:1px solid #cacaca;padding-bottom: 10px;margin-top:10px;justify-content: space-between;" |
| | | class="" v-for="(item, inde) in items.data" :key="inde" @click=" |
| | | $router.push({ |
| | | path: '/newPage', |
| | | query: { |
| | | listid: item.id |
| | | } |
| | | }) |
| | | " |
| | | > |
| | | "> |
| | | <div style="display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-between;"> |
| | | <div |
| | | class="titContent" |
| | | style=" |
| | | <div class="titContent" style=" |
| | | -webkit-box-orient: vertical; |
| | | font-size: 0.38rem; |
| | | margin-top: 0.2rem; |
| | | margin-bottom: 20px; |
| | | " |
| | | > |
| | | "> |
| | | {{ item.title }} |
| | | </div> |
| | | <div class="item-times"> |
| | |
| | | import ADFASDF from "@/assets/img/20240711-160804.jpg"; |
| | | import xiazai from "@/assets/img/xiazai.png"; |
| | | import GoToLogin from "@/page/home/components/GoLogin.vue"; |
| | | import { MessageBox } from "mint-ui"; |
| | | import { |
| | | MessageBox |
| | | } from "mint-ui"; |
| | | import Language from "@/components/Language/index.vue"; |
| | | import tabsList from "@/page/list/tradingList/tabs"; |
| | | |
| | |
| | | // 客服地址 |
| | | news: "tab_0", |
| | | // 新闻导航 |
| | | newListHeader: [ |
| | | { |
| | | newListHeader: [{ |
| | | title: this.$t("hj6"), |
| | | id: "tab_0", |
| | | data: [], |
| | |
| | | Announcement, |
| | | ADFASDF, |
| | | close: true, |
| | | intervalId: null, |
| | | proData: [], // 分割好的数据 |
| | | currentIndex: 0, |
| | | bannerImgsArr: [ |
| | | { |
| | | bannerImgsArr: [{ |
| | | img: require("@/assets/img/11111.png") |
| | | }, |
| | | { |
| | | img: require("@/assets/img/11111.png") |
| | | img: require("@/assets/img/22222.png") |
| | | } |
| | | // { |
| | | // img: "https://api.trowegroup.com/bs/image/20240305/06eb4602ba7b3e570ccd70c0415884ec.png", |
| | |
| | | }, |
| | | computed: { |
| | | navsArr() { |
| | | return [ |
| | | { |
| | | return [{ |
| | | img: xiazai, |
| | | title: this.$t("hj1461") |
| | | }, |
| | |
| | | let data = await api.getIndexData(); |
| | | if (data.status === 0) { |
| | | this.zslist = data.data |
| | | } else { |
| | | } |
| | | } else {} |
| | | }, |
| | | closeclick() { |
| | | this.isshow = false; |
| | |
| | | // 判断是否登录 |
| | | this.$store.state.userInfo = data.data; |
| | | this.userInfo = data.data; |
| | | } else { |
| | | } |
| | | } else {} |
| | | }, |
| | | getHuo() { |
| | | // 123随机 |
| | |
| | | // break |
| | | case 3: |
| | | // this.$router.push('/Subscription?idx=1') |
| | | this.$router.push({ path: "/trading-list", query: { indexid: 3 } }); |
| | | this.$router.push({ |
| | | path: "/trading-list", |
| | | query: { |
| | | indexid: 3 |
| | | } |
| | | }); |
| | | break; |
| | | case 4: |
| | | // this.$router.push('/SubDK') |
| | |
| | | navigator.vibrate([55]); |
| | | } |
| | | }, |
| | | async getBanner() { |
| | | getBanner() { |
| | | // 获取显示的banner |
| | | let result = await api.getBannerByPlat({ platType: "m" }); |
| | | let result = api.getBannerByPlat({ |
| | | platType: "m" |
| | | }); |
| | | if (result.status === 0) { |
| | | var ajson = { bannerUrl: this.banner1 }; |
| | | var ajson = { |
| | | bannerUrl: this.banner1 |
| | | }; |
| | | this.bannerList.push(ajson); |
| | | } else { |
| | | this.$store.commit("elAlertShow", { |
| | |
| | | }); |
| | | } |
| | | }, |
| | | |
| | | startPolling(){ |
| | | this.intervalId = setInterval(() => { |
| | | this.getrglist(); |
| | | }, 5000); // 每 5 秒轮询一次 |
| | | }, |
| | | stopPolling() { |
| | | if (this.intervalId) { |
| | | clearInterval(this.intervalId); |
| | | this.intervalId = null; |
| | | } |
| | | }, |
| | | // 获取新闻列表 |
| | | async getNewsList(type) { |
| | | if (typeof type == "string") type = 1; |
| | |
| | | }, |
| | | |
| | | handleSearchClick() { |
| | | this.$router.push({ path: "/trading-list", query: { type: 1 } }); |
| | | this.$router.push({ |
| | | path: "/trading-list", |
| | | query: { |
| | | type: 1 |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | | |
| | | async mounted() { |
| | | beforeDestroy() { |
| | | this.stopPolling() |
| | | }, |
| | | mounted() { |
| | | this.startPolling(); |
| | | this.getUserInfo(); |
| | | this.getrglist() |
| | | // this.getrglist() |
| | | this.getInfoSite(); |
| | | await this.getNewsList(1); |
| | | this.getNewsList(1); |
| | | this.getArtList(); |
| | | this.getBanner(); |
| | | |
| | | setInterval(() => { |
| | | if (window.localStorage.getItem("USERTOKEN")) { |
| | | this.isGoTo = false; |
| | |
| | | /deep/.header-box{ |
| | | display: none; |
| | | } |
| | | |
| | | /deep/.asiis{ |
| | | display: none; |
| | | } |
| | | |
| | | .horizontal-scroll-container::-webkit-scrollbar { |
| | | display: none; /* 对于 Webkit 浏览器(如 Chrome, Safari)隐藏滚动条 */ |
| | | display: none; |
| | | /* 对于 Webkit 浏览器(如 Chrome, Safari)隐藏滚动条 */ |
| | | } |
| | | |
| | | .scroll-item_top_right{ |
| | | width: 30%; |
| | | font-size: 12px; |
| | | font-weight: 700; |
| | | color: #ababab; |
| | | } |
| | | |
| | | .scroll-item_top_left{ |
| | | width: 70%; |
| | | font-size: .373333rem; |
| | | font-weight: 700; |
| | | color: #137D68; |
| | | } |
| | | |
| | | .scroll-item_top{ |
| | | display: flex; |
| | | align-items: center; |
| | | margin-bottom: 25px; |
| | | } |
| | | |
| | | .scroll-item { |
| | | display: inline-block; /* 横向排列每个项 */ |
| | | min-width: 225px; /* 每个项的宽度 */ |
| | | height: 160px; /* 每个项的高度 */ |
| | | background-color: #F5EDEC; /* 背景色 */ |
| | | margin-left: 20px; /* 项之间的间距 */ |
| | | display: inline-block; |
| | | /* 横向排列每个项 */ |
| | | min-width: 225px; |
| | | /* 每个项的宽度 */ |
| | | height: 160px; |
| | | /* 每个项的高度 */ |
| | | background-color: #F5EDEC; |
| | | /* 背景色 */ |
| | | margin-left: 20px; |
| | | /* 项之间的间距 */ |
| | | // line-height: 100px; /* 垂直居中 */ |
| | | |
| | | border-radius: 5px; /* 圆角 */ |
| | | border-radius: 5px; |
| | | /* 圆角 */ |
| | | padding:.32rem .213333rem; |
| | | } |
| | | |
| | | .custom-swipe { |
| | | width: 100%; |
| | | height: 180px; /* 每个项的高度 */ |
| | | height: 180px; |
| | | /* 每个项的高度 */ |
| | | display: flex; |
| | | overflow-x: auto; /* 启用横向滚动 */ |
| | | white-space: nowrap; /* 保证子项不换行 */ |
| | | overflow-x: auto; |
| | | /* 启用横向滚动 */ |
| | | white-space: nowrap; |
| | | /* 保证子项不换行 */ |
| | | scrollbar-width: none; |
| | | } |
| | | |
| | | .navs { |
| | | width: 100%; |
| | | height: 2.6154rem; |
| | |
| | | font-weight: 600; |
| | | white-space: nowrap; |
| | | overflow: hidden; |
| | | text-overflow: ellipsis /* 显示省略符号 (...) */; |
| | | text-overflow: ellipsis |
| | | /* 显示省略符号 (...) */ |
| | | ; |
| | | } |
| | | |
| | | .txt_box_box { |
| | |
| | | width: 100%; |
| | | height: auto; |
| | | margin-top: 0.2308rem; |
| | | |
| | | > .banner_top { |
| | | width: 100%; |
| | | height: auto; |
| | | |
| | | img { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | |
| | | .van-swipe-item { |
| | | // height: 3.0615rem; |
| | | // padding: 0 0.264rem; |
| | | // border-radius: 0.3rem; |
| | | } |
| | | |
| | | .van-swipe-item img { |
| | | // border-radius: 0.3rem; |
| | | } |
| | |
| | | align-items: center; |
| | | padding: 0.2rem 0 0.2rem 0; |
| | | background-color: #E8F4F0; |
| | | |
| | | > .an_content { |
| | | width: 95%; |
| | | height: 0.559rem; |
| | |
| | | display: flex; |
| | | flex-wrap: wrap; |
| | | justify-content: space-between; |
| | | |
| | | li { |
| | | display: flex; |
| | | flex-direction: column; |