From 66a33e936d39ec4db7fdffed5d646e044ccc43e9 Mon Sep 17 00:00:00 2001
From: lxf <1371462558@qq.com>
Date: Fri, 18 Apr 2025 10:44:39 +0800
Subject: [PATCH] feat

---
 src/components/popup-delivery/index.vue |   43 ++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 42 insertions(+), 1 deletions(-)

diff --git a/src/components/popup-delivery/index.vue b/src/components/popup-delivery/index.vue
index 41c8517..e5850c2 100644
--- a/src/components/popup-delivery/index.vue
+++ b/src/components/popup-delivery/index.vue
@@ -32,7 +32,9 @@
             (detailData.direction === 'buy' && detailData.state == 'created' && parseFloat(detailData['close_price']) * 1 < parseFloat(detailData['open_price']) * 1) ||
             (detailData.direction !== 'buy' && detailData.state !== 'created' && parseFloat(price) * 1 > parseFloat(detailData['open_price']) * 1) ||
             (detailData.direction !== 'buy' && detailData.state == 'created' && parseFloat(detailData['close_price']) * 1 > parseFloat(detailData['open_price']) * 1),
-        }">{{ detailData.state !== 'created' ? price : detailData[item.key] }}</p>
+        }">
+		<!-- {{ detailData.state !== 'created' ? price : detailData[item.key] }}{{newprice}}</p> -->
+		{{newprice}}</p>
         <p class="font-30 " :class="colorChoose(item)" v-else>{{ handleBuyWord(item) }}</p>
       </li>
     </ul>
@@ -47,6 +49,7 @@
 </template>
 <script>
 import { Circle, CountDown } from 'vant';
+import { WS_URL } from '@/config'
 export default {
   name: 'PopupDelivery',
   components: {
@@ -54,6 +57,10 @@
     [CountDown.name]: CountDown
   },
   props: {
+	  symbol:{
+		  type: String,
+		  default: '',
+	  },
     showBtns: {
       type: Boolean,
       default: false,
@@ -111,6 +118,9 @@
       ]
     }
   },
+  mounted (){
+	  this.fetchDeepData()
+  },
   created() {
     if (!(this.detailData.state === 'created')) {// 交割已完成
       this.handleInit()
@@ -128,6 +138,11 @@
       arr: [],
       currentRate: 0, // 当前进度
       interval: null,
+	  newprice:"",
+	  sockets: {
+	      quotes: null, // 行情
+	      deep: null /// 深度
+	  },
       rate: 0, // 目标进度
       // listItem: [
       //     {id: 1, text: '购买价', key: 'open_price'},
@@ -138,13 +153,37 @@
       // ]
     }
   },
+  deactivated(){
+	  this.closeSocket()
+  },
   methods: {
+	  closeSocket() {
+		  this.sockets.deep.close()
+	      // this.sockets.quotes && this.sockets.quotes.close()
+	      // this.sockets.deep && this.sockets.deep.close()
+	      this.sockets.quotes = null
+	      this.sockets.deep = null
+	  },
+	  fetchDeepData() {
+	     
+	          this.startDeepSocket() // socket
+	  },
+	  startDeepSocket() {
+	      this.sockets.deep = new WebSocket(`${WS_URL}/3/${this.symbol}`)
+	      this.sockets.deep.onmessage = (evt) => {
+	          const { data } = evt
+	          const { code, data: _data } = JSON.parse(data)
+			// console.log(_data.bids[0].price);
+			this.newprice = _data.asks[0].price
+	      }
+	  },
     continueToBuy() {
       if (this.detailData.state !== 'created') {
         return
       }
       console.log()
       this.$emit('continueToBuy', this.detailData)
+	  this.closeSocket()
 
       //this.$router.push(`/trendDetails/${symbol}`)
     },
@@ -197,6 +236,8 @@
     },
     onClose() { /// 关闭
       this.$emit('close')
+	  this.closeSocket()
+	  
     }
   }
 }

--
Gitblit v1.9.3