| | |
| | | <div class="real_time_detail"> |
| | | <div class="left_now_price"> |
| | | <div class="top_now"> |
| | | <span |
| | | :class="singDetails.nowPrice - singDetails.preclose_px <0?'price green':'price red'" |
| | | >{{ singDetails.nowPrice }}</span> |
| | | <span :class="singDetails.nowPrice - singDetails.preclose_px < 0 ? 'price green' : 'price red'">{{ |
| | | singDetails.nowPrice |
| | | }}</span> |
| | | </div> |
| | | <div class="bottom_now"> |
| | | <div> |
| | | <span v-if="singDetails.nowPrice == 0">-</span> |
| | | <span |
| | | v-else |
| | | >{{singDetails.nowPrice-singDetails.preclose_px>0 ?'+':''}}{{(singDetails.nowPrice-singDetails.preclose_px).toFixed(2)}}</span> |
| | | <span v-else>{{ singDetails.nowPrice - singDetails.preclose_px > 0 |
| | | ? '+' : '' |
| | | }}{{ (singDetails.nowPrice - singDetails.preclose_px).toFixed(2) }}</span> |
| | | </div> |
| | | <div |
| | | class="tew" |
| | | :class="singDetails.nowPrice - singDetails.preclose_px <0?'number green':'number red'" |
| | | > |
| | | <div class="tew" :class="singDetails.nowPrice - singDetails.preclose_px < 0 ? 'number green' : 'number red'"> |
| | | <span v-if="singDetails.nowPrice == 0">-</span> |
| | | <span |
| | | v-else |
| | | >({{singDetails.nowPrice-singDetails.preclose_px>0 ?'+':''}} {{singDetails.hcrate?singDetails.hcrate:'0'}}%)</span> |
| | | <span v-else>({{ singDetails.nowPrice - singDetails.preclose_px > 0 ? '+' : '' }} |
| | | {{ singDetails.hcrate ? singDetails.hcrate : '0' }}%)</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="tops"> |
| | | <div class="lefts topes"> |
| | | <span class="titles">{{ '今开' }}</span> |
| | | <span |
| | | :class="singDetails.nowPrice - singDetails.preclose_px <0?'number green':'number red'" |
| | | >{{ singDetails.open_px }}</span> |
| | | <span :class="singDetails.nowPrice - singDetails.preclose_px < 0 ? 'number green' : 'number red'">{{ |
| | | singDetails.open_px |
| | | }}</span> |
| | | </div> |
| | | <div class="rights topes"> |
| | | <span class="titles">{{ '最高' }}</span> |
| | | <span |
| | | :class="singDetails.nowPrice - singDetails.preclose_px <0?'number green':'number red'" |
| | | >{{ singDetails.today_max }}</span> |
| | | <span :class="singDetails.nowPrice - singDetails.preclose_px < 0 ? 'number green' : 'number red'">{{ |
| | | singDetails.today_max |
| | | }}</span> |
| | | </div> |
| | | </div> |
| | | <div class="bottoms"> |
| | | <div class="lefts bots"> |
| | | <span class="titles">{{ '昨收' }}</span> |
| | | <span |
| | | :class="singDetails.nowPrice - singDetails.preclose_px <0?'number green':'number red'" |
| | | >{{ singDetails.preclose_px }}</span> |
| | | <span :class="singDetails.nowPrice - singDetails.preclose_px < 0 ? 'number green' : 'number red'">{{ |
| | | singDetails.preclose_px |
| | | }}</span> |
| | | </div> |
| | | <div class="rights bots"> |
| | | <span class="titles">{{ '最低' }}</span> |
| | | <span |
| | | :class="singDetails.nowPrice - singDetails.preclose_px <0?'number green':'number red'" |
| | | >{{ singDetails.today_min }}</span> |
| | | <span :class="singDetails.nowPrice - singDetails.preclose_px < 0 ? 'number green' : 'number red'">{{ |
| | | singDetails.today_min |
| | | }}</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | </div> |
| | | <div class="right_sell1"> |
| | | <span>{{ singDetails.buy4_num }}</span> |
| | | |
| | | |
| | | </div> |
| | | </div> |
| | | <div class="ets"> |
| | |
| | | <span>{{ '简介' }}</span> |
| | | </div> |
| | | <div class="jet"> |
| | | <span>国家体育总局等八部门日前共同印发了《户外运动产业发展规划(2022-2025年)》。《规划》提出,到2025年,户外运动产业高质量发展成效显著,基本形成供给与需求有效对接、产业与生态协调发展、产品与服务品牌彰显、业态与模式持续创新的发展格局。户外运动场地设施持续增加,普及程度大幅提升,参与人数不断增长,户外运动产业总规模超过3万亿元。</span> |
| | | <span>{{ jianjie }}</span> |
| | | </div> |
| | | </div> |
| | | <div class="border_bottom"></div> |
| | | </div> |
| | | <div class="btns"> |
| | | <div class="lefts"> |
| | | <div class="left_ca" @click="handleSc()"> |
| | | <img src="../../assets/img/meishoucang.png" alt v-if="scFlag === false" /> |
| | | <div class="left_ca" @click="option()"> |
| | | <img src="../../assets/img/meishoucang.png" alt v-if="isOptionOpt === false" /> |
| | | <img src="../../assets/img/shoucangle.png" alt v-else /> |
| | | </div> |
| | | <div class="right_xx" @click="handleJj()"> |
| | |
| | | kLineDetails: {}, // K线图详情数据 |
| | | singDetails: {}, |
| | | scFlag: false, |
| | | acseFlag: false |
| | | acseFlag: false, |
| | | jianjie: "", |
| | | optionBtn:false, |
| | | isOptionOpt:false, |
| | | }; |
| | | }, |
| | | components: { |
| | |
| | | created() { |
| | | const { query } = this.$route; |
| | | this.kLineDetails = query; |
| | | this.getOpation(); |
| | | // this.$Lazyload(); |
| | | this.getSingDetails(); |
| | | }, |
| | | methods: { |
| | | async option() { |
| | | if(this.optionBtn){ |
| | | return |
| | | }; |
| | | this.optionBtn = true; |
| | | if (this.isOptionOpt) { |
| | | let data = await api.delOption({ code: this.kLineDetails.code }); |
| | | if (data.status === 0) { |
| | | this.getOpation(); |
| | | this.optionBtn = false; |
| | | } else { |
| | | this.optionBtn = false; |
| | | console.log(data.msg); |
| | | |
| | | } |
| | | } else { |
| | | let data = await api.addOption({ code: this.kLineDetails.code }); |
| | | if (data.status === 0) { |
| | | this.getOpation(); |
| | | this.optionBtn = false; |
| | | } else { |
| | | console.log(data.msg); |
| | | this.optionBtn = false; |
| | | } |
| | | } |
| | | }, |
| | | async getOpation () { |
| | | let opts = { |
| | | code: this.$route.query.code |
| | | } |
| | | let data = await api.isOption(opts) |
| | | if (data.status === 0) { |
| | | // 0 --> 未添加 |
| | | this.isOptionOpt = false |
| | | } else { |
| | | this.isOptionOpt = true |
| | | } |
| | | }, |
| | | async getSingDetails() { |
| | | let opts = { |
| | | code: this.kLineDetails.code, |
| | |
| | | await api.getSingleStock(opts).then(res => { |
| | | if (res.status === 0) { |
| | | this.singDetails = res.data.stock; |
| | | if (res.data.introduction) { |
| | | this.jianjie = res.data.introduction.result.data.fareArea; |
| | | } else { |
| | | this.jianjie = res.data.indexintroduction; |
| | | } |
| | | console.log(this.singDetails); |
| | | } |
| | | }); |
| | |
| | | width: 100%; |
| | | height: calc(100% - 1.7rem); |
| | | overflow: auto; |
| | | |
| | | > .content { |
| | | width: 100%; |
| | | height: 100%; |
| | | position: relative; |
| | | } |
| | | } |
| | | |
| | | .detail_title { |
| | | width: 100%; |
| | | height: 3.2rem; |
| | | padding: 0 0.3rem; |
| | | background: #fff; |
| | | |
| | | .top_back { |
| | | width: 100%; |
| | | height: 1.2rem; |
| | | display: flex; |
| | | align-items: center; |
| | | |
| | | .left_back { |
| | | width: 0.8rem; |
| | | height: 80%; |
| | | display: flex; |
| | | align-items: center; |
| | | |
| | | > img { |
| | | margin-top: 0.2rem; |
| | | width: 0.6rem; |
| | | height: 0.6rem; |
| | | } |
| | | } |
| | | |
| | | .right_title { |
| | | width: 3rem; |
| | | height: 80%; |
| | | |
| | | .t_t { |
| | | width: 100%; |
| | | height: 70%; |
| | | display: flex; |
| | | align-items: center; |
| | | font-size: 0.4615rem; |
| | | |
| | | span { |
| | | font-weight: 600; |
| | | } |
| | | } |
| | | |
| | | .b_t { |
| | | width: 100%; |
| | | height: 30%; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .k_line_detail { |
| | | width: 100%; |
| | | height: 8.3rem; |
| | | background: #fff; |
| | | border-radius: 0 0 0.3rem 0.3rem; |
| | | } |
| | | |
| | | .real_time_detail { |
| | | width: 100%; |
| | | height: 2rem; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | |
| | | .left_now_price { |
| | | width: 35%; |
| | | height: 100%; |
| | | |
| | | .top_now { |
| | | width: 100%; |
| | | height: 65%; |
| | |
| | | align-items: center; |
| | | padding-left: 0.1rem; |
| | | padding-top: 0.3rem; |
| | | |
| | | span { |
| | | font-weight: 500; |
| | | } |
| | | } |
| | | |
| | | .bottom_now { |
| | | width: 100%; |
| | | height: 35%; |
| | | display: flex; |
| | | padding-left: 0.1rem; |
| | | } |
| | | |
| | | .tew { |
| | | margin-left: 0.2rem; |
| | | } |
| | | } |
| | | |
| | | .right_ets { |
| | | width: 65%; |
| | | height: 100%; |
| | | |
| | | > div { |
| | | width: 100%; |
| | | height: 50%; |
| | | display: flex; |
| | | |
| | | > div { |
| | | width: 50%; |
| | | height: 100%; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .topes { |
| | | span { |
| | | display: inline-block; |
| | | padding-top: 0.6rem; |
| | | } |
| | | } |
| | | |
| | | .bots { |
| | | span { |
| | | display: inline-block; |
| | | padding-top: 0.2rem; |
| | | } |
| | | } |
| | | |
| | | .titles { |
| | | color: rgb(159, 159, 159); |
| | | } |
| | | |
| | | .border_bottom { |
| | | width: 100%; |
| | | height: 0.05rem; |
| | |
| | | position: absolute; |
| | | top: 3rem; |
| | | } |
| | | |
| | | .priect_top_bottom { |
| | | width: 100%; |
| | | background: #fff; |
| | | padding: 0.3rem 0.3rem; |
| | | margin-top: 0.2rem; |
| | | border-radius: 0.3rem 0.3rem 0 0; |
| | | |
| | | .t_title { |
| | | width: 100%; |
| | | height: 15%; |
| | | font-size: 0.4546rem; |
| | | margin-top: 0.2rem; |
| | | |
| | | span { |
| | | font-weight: 800; |
| | | } |
| | | } |
| | | |
| | | .charts { |
| | | width: 100%; |
| | | height: 85%; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | margin-top: 0.6rem; |
| | | |
| | | > div { |
| | | width: 49%; |
| | | height: 100%; |
| | | } |
| | | |
| | | .t_ma { |
| | | width: 100%; |
| | | height: 0.3rem; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .ets { |
| | | width: 100%; |
| | | height: 0.5rem; |
| | | display: flex; |
| | | margin-top: 0.08rem; |
| | | |
| | | > div { |
| | | width: 50%; |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | |
| | | .right_sell1 { |
| | | justify-content: flex-end; |
| | | } |
| | | |
| | | span { |
| | | font-weight: 600; |
| | | } |
| | | } |
| | | |
| | | .left_s { |
| | | color: #028f52; |
| | | } |
| | | |
| | | .right_h { |
| | | color: #d50000; |
| | | } |
| | | |
| | | .ob_detail { |
| | | width: 100%; |
| | | height: 10rem; |
| | | background: #fff; |
| | | margin-bottom: 1.2821rem; |
| | | margin-top: 0.3rem; |
| | | |
| | | .ob_content { |
| | | width: 100%; |
| | | height: 100%; |
| | | padding: 0 0.3rem; |
| | | |
| | | .ob_title { |
| | | width: 100%; |
| | | height: 1rem; |
| | |
| | | align-items: center; |
| | | font-size: 0.5128rem; |
| | | } |
| | | |
| | | .details { |
| | | width: 100%; |
| | | height: 1rem; |
| | | display: flex; |
| | | font-size: 0.3846rem; |
| | | |
| | | .left_details { |
| | | width: 40%; |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | |
| | | .right_details { |
| | | width: 60%; |
| | | height: 100%; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .btns { |
| | | width: 100%; |
| | | height: 1.7rem; |
| | |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | |
| | | .lefts { |
| | | width: 25%; |
| | | height: 70%; |
| | | display: flex; |
| | | align-items: center; |
| | | |
| | | > div { |
| | | width: 50%; |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | |
| | | img { |
| | | width: 0.6rem; |
| | | height: 0.6rem; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .rights { |
| | | width: 70%; |
| | | height: 70%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-around; |
| | | |
| | | > div { |
| | | border-radius: 0.15rem; |
| | | } |
| | | |
| | | .buy_btn { |
| | | width: 45%; |
| | | height: 100%; |
| | | background: rgb(225, 59, 69); |
| | | color: #fff; |
| | | |
| | | .top_buy { |
| | | width: 100%; |
| | | height: 45%; |
| | |
| | | justify-content: center; |
| | | align-items: flex-end; |
| | | } |
| | | |
| | | .bottom_buy { |
| | | width: 100%; |
| | | height: 55%; |
| | |
| | | padding: 0.1rem 0 0 0; |
| | | } |
| | | } |
| | | |
| | | .sell_btn { |
| | | width: 45%; |
| | | height: 100%; |
| | | background: rgb(68, 155, 84); |
| | | color: #fff; |
| | | |
| | | .top_sell { |
| | | width: 100%; |
| | | height: 45%; |
| | |
| | | justify-content: center; |
| | | align-items: flex-end; |
| | | } |
| | | |
| | | .bottom_sell { |
| | | width: 100%; |
| | | height: 55%; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .jianjie { |
| | | width: 100%; |
| | | height: 5rem; |
| | |
| | | border-radius: 0.3rem 0.3rem 0 0; |
| | | margin-bottom: 1.7rem; |
| | | padding: 0 0.3rem; |
| | | |
| | | .top_jj { |
| | | width: 100%; |
| | | height: 1.3rem; |
| | | display: flex; |
| | | align-items: center; |
| | | font-size: 0.4546rem; |
| | | |
| | | span { |
| | | font-weight: 800; |
| | | } |
| | | } |
| | | |
| | | .jet { |
| | | width: 100%; |
| | | |
| | | span { |
| | | line-height: 0.5rem; |
| | | } |
| | | } |
| | | } |
| | | |
| | | @-webkit-keyframes zy{ |
| | | 10% { |
| | | transform: rotate(15deg); |
| | | } |
| | | |
| | | 20% { |
| | | transform: rotate(-10deg); |
| | | } |
| | | |
| | | 30% { |
| | | transform: rotate(5deg); |
| | | } |
| | | |
| | | 40% { |
| | | transform: rotate(-5deg); |
| | | } |
| | | 50%,100% { |
| | | |
| | | 50%, |
| | | 100% { |
| | | transform: rotate(0deg); |
| | | } |
| | | } |