| | |
| | | <img src="../../assets/img/zuojiantou.png" alt /> |
| | | </div> |
| | | <div class="right_title"> |
| | | <div class="t_t" style="white-space: nowrap"> |
| | | <div class="t_t line-one" style="white-space: nowrap"> |
| | | <span>{{ singDetails.name }}</span> |
| | | </div> |
| | | <!-- <div class="t_t" style="white-space: nowrap"> |
| | | <span>{{ singDetails.name }}({{ singDetails.gid }})</span> |
| | | </div> |
| | | <div class="b_t"> |
| | | <span>{{ singDetails.spell }}</span> |
| | | </div> |
| | | </div> --> |
| | | </div> |
| | | </div> |
| | | <!-- 隐藏右侧金额显示 --> |
| | |
| | | </div> |
| | | </div> |
| | | </div> --> |
| | | </div> |
| | | <div class="flex-start" style="font-size: .4rem;"> |
| | | <span class="i_icon">{{ bayType }}</span> |
| | | <span class="i_hint" style="color:#777">{{ singDetails.spell }}</span> |
| | | </div> |
| | | <div class="detail_title_a"> |
| | | {{ singDetails.name }}({{ singDetails.gid }}) |
| | | </div> |
| | | <div class="real_time_detail"> |
| | | <div class="left_now_price"> |
| | |
| | | /> |
| | | <img src="../../assets/img/shoucangle.png" alt v-else /> |
| | | </div> |
| | | <div class="right_xx" @click="handleJj()"> |
| | | <!-- <div class="right_xx" @click="handleJj()"> |
| | | <a href="#"><img src="../../assets/img/xiaoxi.png" alt/></a> |
| | | </div> |
| | | </div> --> |
| | | </div> |
| | | <div class="rights"> |
| | | <div class="buy_btn"> |
| | | <!-- <div class="buy_btn"> |
| | | <div class="top_buy" @click="goBuy(0)"> |
| | | <span>{{ $t("hj84") }}</span> |
| | | </div> |
| | | <!-- <div class="bottom_buy"> |
| | | <span>{{ singDetails.nowPrice }}</span> |
| | | </div> --> |
| | | </div> |
| | | </div> --> |
| | | <div class="sell_btn" @click="goBuy(1)"> |
| | | <div class="top_sell"> |
| | | <span>{{ $t("hj85") }}</span> |
| | | </div> |
| | | <!-- <div class="bottom_sell"> |
| | | <span>{{ singDetails.nowPrice }}</span> |
| | | </div> --> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | newsdetailList: [], |
| | | bayType: "", |
| | | timer: null, |
| | | key: 0 |
| | | key: 0, |
| | | messageInstances: [] // 保存所有消息提示实例 |
| | | }; |
| | | }, |
| | | components: { |
| | |
| | | }, |
| | | |
| | | created() { |
| | | // 进入页面的时候清除所以得计时器,防止页面切换的时候出现多个定时器 |
| | | let end = setTimeout(function() {}, 0); |
| | | for (let i = 0; i <= end; i++) { |
| | | clearInterval(i); |
| | | } |
| | | |
| | | const { query } = this.$route; |
| | | this.kLineDetails = query; |
| | | if (query.if_us === "1") { |
| | | this.getSingDetailUs(); |
| | | } else { |
| | | this.getSingDetails(); |
| | | |
| | | this.timer = setInterval(() => { |
| | | this.getSingDetails(); |
| | | }, 2000); |
| | | }, 5000); |
| | | } |
| | | this.getOpation(); |
| | | // this.$Lazyload(); |
| | | this.getUserInfo(); |
| | | this.getNohknews(); |
| | | }, |
| | | beforeDestroy() { |
| | | this.clearInterval(this.timer); // 在组件销毁前清除定时器 |
| | | clearInterval(this.timer); // 在组件销毁前清除定时器 |
| | | // 关闭所有消息提示 |
| | | this.messageInstances.forEach(instance => { |
| | | if (instance && typeof instance.close === 'function') { |
| | | instance.close(); |
| | | } |
| | | }); |
| | | this.messageInstances = []; |
| | | }, |
| | | destroyed() { |
| | | clearInterval(this.timer); // 在组件销毁前清除定时器 |
| | | // 确保所有消息提示都已关闭 |
| | | this.messageInstances.forEach(instance => { |
| | | if (instance && typeof instance.close === 'function') { |
| | | instance.close(); |
| | | } |
| | | }); |
| | | this.messageInstances = []; |
| | | }, |
| | | // beforeDestroy() { |
| | | // this.Klinetype = false; |
| | |
| | | if (data.status === 0) { |
| | | this.getOpation(); |
| | | this.optionBtn = false; |
| | | this.$message({ |
| | | const messageInstance = this.$message({ |
| | | message: this.$t("hj97"), |
| | | type: "success" |
| | | }); |
| | | this.messageInstances.push(messageInstance); |
| | | } else { |
| | | this.optionBtn = false; |
| | | this.$message({ |
| | | const messageInstance = this.$message({ |
| | | message: data.msg, |
| | | type: "warning" |
| | | }); |
| | | this.messageInstances.push(messageInstance); |
| | | } |
| | | } else { |
| | | let data = await api.addOption({ code: this.kLineDetails.code }); |
| | | if (data.status === 0) { |
| | | this.getOpation(); |
| | | this.optionBtn = false; |
| | | this.$message({ |
| | | const messageInstance = this.$message({ |
| | | message: this.$t("hj96"), |
| | | type: "success" |
| | | }); |
| | | this.messageInstances.push(messageInstance); |
| | | } else { |
| | | this.$message({ |
| | | const messageInstance = this.$message({ |
| | | message: data.msg, |
| | | type: "warning" |
| | | }); |
| | | this.messageInstances.push(messageInstance); |
| | | this.optionBtn = false; |
| | | } |
| | | } |
| | |
| | | padding: 0 0.3rem; |
| | | background: #fff; |
| | | |
| | | .detail_title_a { |
| | | font-size: 0.45rem; |
| | | font-weight: 500; |
| | | margin-top: 0.2rem; |
| | | line-height: 0.45rem; |
| | | } |
| | | |
| | | .i_icon { |
| | | border-radius: 0 26em 26em 0; |
| | | background: #07c160; |
| | | color: #fff; |
| | | padding: 0.1em 0.5em 0.1em 0.4em; |
| | | margin-right: 0.3em; |
| | | font-size: 0.8em; |
| | | } |
| | | |
| | | .top_back { |
| | | width: 50%; |
| | | width: 90%; |
| | | height: 1.2rem; |
| | | display: flex; |
| | | align-items: center; |
| | |
| | | height: 80%; |
| | | display: flex; |
| | | align-items: center; |
| | | margin-right: 10vw; |
| | | |
| | | > img { |
| | | margin-top: 0.2rem; |
| | | // margin-top: 0.2rem; |
| | | width: 0.6rem; |
| | | height: 0.6rem; |
| | | } |
| | | } |
| | | |
| | | .right_title { |
| | | width: 3rem; |
| | | height: 80%; |
| | | width: 70%; |
| | | // height: 80%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | |
| | | .t_t { |
| | | width: 100%; |
| | | height: 70%; |
| | | display: flex; |
| | | height: 100%; |
| | | line-height: 1.2rem; |
| | | align-items: center; |
| | | font-size: 0.4615rem; |
| | | |
| | |
| | | |
| | | .k_line_detail { |
| | | width: 100%; |
| | | height: calc(100vh - 300px); |
| | | height: 100vw; |
| | | background: #fff; |
| | | border-radius: 0 0 0.3rem 0.3rem; |
| | | } |
| | |
| | | display: flex; |
| | | align-items: center; |
| | | font-weight: bold; |
| | | |
| | | span { |
| | | font-weight: 500; |
| | | } |
| | |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | padding: 0 0.1rem; |
| | | |
| | | .titles { |
| | | padding-right: 0.1rem; |
| | | } |
| | |
| | | height: 70%; |
| | | display: flex; |
| | | align-items: center; |
| | | padding-left: 0.3rem; |
| | | |
| | | > div { |
| | | width: 50%; |
| | |
| | | } |
| | | |
| | | .rights { |
| | | width: 70%; |
| | | width: 80%; |
| | | height: 70%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-around; |
| | | justify-content: center; |
| | | padding-right: 0.2rem; |
| | | |
| | | > div { |
| | | border-radius: 0.15rem; |
| | | } |
| | | |
| | | .buy_btn { |
| | | width: 45%; |
| | | height: 100%; |
| | | width: 50%; |
| | | height: 80%; |
| | | background: rgb(225, 59, 69); |
| | | color: #fff; |
| | | border-radius: 3rem 0 0 3rem !important; |
| | | |
| | | .top_buy { |
| | | width: 100%; |
| | |
| | | } |
| | | |
| | | .sell_btn { |
| | | width: 45%; |
| | | height: 100%; |
| | | background: rgb(68, 155, 84); |
| | | width: 100%; |
| | | height: 80%; |
| | | background: #c4d600; |
| | | color: #fff; |
| | | // border-radius: 0 3rem 3rem 0 !important; |
| | | border-radius: 3rem !important; |
| | | |
| | | .top_sell { |
| | | width: 100%; |