Ver Fonte

2022-11-25

cmy há 2 anos atrás
pai
commit
a5ff036717

+ 117 - 39
hybrid/html/js/kline.js

@@ -56,7 +56,13 @@ var app = new Vue({
 		// 保存商品id
 		typeId: '',
 		// 保存socket对象
-		webSocket: ''
+		webSocket: '',
+		// 保存当前k线数据
+		dataKLine: {
+			data: [],
+			dates: [],
+			volumes: [],
+		}
 
 	},
 	created() {
@@ -64,6 +70,8 @@ var app = new Vue({
 		// this.getDepth()
 		// 保存商品id
 		this.typeId = getQueryString('type');
+		// 简历长连接
+		this.scoketInit()
 	},
 	mounted() {
 		myChart = echarts.init(document.getElementById('main'));
@@ -75,7 +83,12 @@ var app = new Vue({
 	methods: {
 		// 返回上一页
 		back() {
-			uni.navigateBack()
+			console.log('cf');
+			uni.postMessage({
+				data: {
+					action: 'message'
+				}
+			});
 		},
 
 		scoketInit() {
@@ -83,18 +96,67 @@ var app = new Vue({
 			// 初始化websocket
 			that.webSocket = new WebSocket("wss://wsaws.okx.com:8443/ws/v5/public");
 			that.webSocket.onopen = function(event) {
-				that.webSocket.send(JSON.stringify({
+				console.log('打开链接成功');
+				const requestKData = JSON.stringify({
+					"op": "subscribe",
+					"args": [{
+						"channel": "candle" + that.current,
+						"instId": that.typeId
+					}]
+				})
+				const requestNewData = JSON.stringify({
 					"op": "subscribe",
 					"args": [{
-						"channel": "mark-price-candle1Y",
-						"instId": "BTC-USDT"
+						"channel": "tickers",
+						"instId": that.typeId
 					}]
-				}))
+				})
+				// 获取k线数据
+				that.webSocket.send(requestKData)
+				// 获取当前行情数据
+				that.webSocket.send(requestNewData)
 			}
 			// 监听socket回复事件
 			that.webSocket.addEventListener('message', function(event) {
-				console.log(event, '返回');
+				const item = JSON.parse(event.data);
+				try {
+					// 判断是否为
+					if (item.arg.channel == ("candle" + that.current) && item.data) {
+						const daytime = new Date(+item.data[0][0]);
+						item.data[0][0] = that.initDay(daytime, "YYYY-mm-dd HH:MM:SS")
+						if (item.data[0][0] != that.dataKLine.dates[that.dataKLine.dates.length-1]) {
+						console.log(item.data[0][0],'jiange',that.dataKLine.dates[that.dataKLine.dates.length-1]);
+							const itemi = item.data[0]
+							that.dataKLine.dates.push(itemi[0])
+							that.dataKLine.data.push([+itemi[1], +itemi[2], +itemi[3], +itemi[4], +
+								itemi[5]
+							])
+							that.dataKLine.volumes.push([that.dataKLine.volumes.length, +itemi[5], +
+								itemi[1] > +itemi[2] ? 1 : -1
+							])
+							that.setKline()
+						}
+						// that.txData.lastPrice = data.data[0][]
+					}
+					// 
+					if (item.arg.channel == ("tickers") && item.arg.data) {
+						const data = item.data[0]
+						that.txData.lastPrice = +data.last
+						that.txData.high = +data.high24h
+						that.txData.volume = +data.open24h
+						that.txData.low = +data.low24h
+						that.txData.upRate = ((that.txData.lastPrice - that.txData.volume) / that.txData
+							.volume * 100).toFixed(2)
+						txData.upFlag = +that.txData.upRate > 0 ? 1 : 2;
+					}
+				} catch (e) {
+					console.log("item: " + JSON.stringify(item));
+				}
+
 			});
+			that.webSocket.onclose = function(event) {
+				console.log("WebSocket is closed now.");
+			};
 		},
 		// 获取24小时交易数据统计
 		getTxData() {
@@ -116,27 +178,28 @@ var app = new Vue({
 			}
 			if (type == 3) {
 				items = data.map(function(item, index) {
-					return [index, item[5], item[1] > item[2] ? 1 : -1];
+					return [index, +item[5], +item[1] > +item[2] ? 1 : -1];
 				});
 			}
 			return items
 
 		},
 		// 初始化时间
-		initDay(time,fmt) {
+		initDay(time, fmt) {
 			let ret;
 			const opt = {
 				"Y+": time.getFullYear().toString(), //年
-				"m+": (time.getMonth()+1).toString(), //月
+				"m+": (time.getMonth() + 1).toString(), //月
 				"d+": time.getDate().toString(), //日 
 				"H+": time.getHours().toString(), //小时 
 				"M+": time.getMinutes().toString(), //分 
 				"S+": time.getSeconds().toString() //秒 
 			};
 			for (let k in opt) {
-				ret = new RegExp("("+k+")").exec(fmt)
-				if(ret){
-					fmt = fmt.replace(ret[1],(ret[1].length==1)?(opt[k]):(opt[k].padStart(ret[1].length,"0")));
+				ret = new RegExp("(" + k + ")").exec(fmt)
+				if (ret) {
+					fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length,
+						"0")));
 				}
 			}
 			return fmt;
@@ -145,40 +208,47 @@ var app = new Vue({
 		getKline() {
 			console.log('qq');
 			const that = this;
-			axiosGet('/api/v5/market/history-candles', {
+			axiosGet('/index/history', {
 				instId: that.typeId,
 				bar: that.current,
-				limit: 100
+				limit: 300
 			}).then((res) => {
 				const ar = res.map((e) => {
 					let dateTime = new Date(+e[0]);
-					e[0] = that.initDay(dateTime,"YYYY-mm-dd HH:MM:SS");
-					return
-				})
-				that.setKline(that.dataInit(res, 1), that.dataInit(res, 2), that.dataInit(res, 3))
+					e[0] = that.initDay(dateTime, "YYYY-mm-dd HH:MM:SS");
+					return e
+				}).reverse()
+				
+				that.dataKLine = {
+					dates: that.dataInit(ar, 1),
+					data: that.dataInit(ar, 2),
+					volumes: that.dataInit(ar, 3),
+				}
+				
+				that.setKline()
 			}).catch((e) => {
-				console.log(e);
+				console.log(e, '2222');
 			})
 		},
 		// 设置线条数据
-		setKline(dates, data, volumes) {
-			var dataMA5 = this.calculateMA(5, data);
-			var dataMA10 = this.calculateMA(10, data);
-			var dataMA30 = this.calculateMA(30, data);
-			var volumeMA5 = this.calculateMA(5, volumes);
-			var volumeMA10 = this.calculateMA(10, volumes);
+		setKline() {
+			const that = this;
+			var dataMA5 = that.calculateMA(5, that.dataKLine.data);
+			var dataMA10 = that.calculateMA(10, that.dataKLine.data);
+			var dataMA30 = that.calculateMA(30, that.dataKLine.data);
+			var volumeMA5 = that.calculateMA(5, that.dataKLine.volumes);
+			var volumeMA10 = that.calculateMA(10, that.dataKLine.volumes);
 			myChart.setOption({
-				xAxis: [
-					{
-						data: dates
+				xAxis: [{
+						data: that.dataKLine.dates
 					},
 					{
-						data: dates
+						data: that.dataKLine.dates
 					},
 				],
 				series: [{
 						name: '日K',
-						data: data
+						data: that.dataKLine.data
 					},
 					{
 						name: 'MA5',
@@ -194,7 +264,7 @@ var app = new Vue({
 					},
 					{
 						name: 'Volume',
-						data: volumes
+						data: that.dataKLine.volumes
 					},
 					{
 						name: 'VolumeMA5',
@@ -231,22 +301,23 @@ var app = new Vue({
 		// 获取成交记录
 		getDealHis() {
 			const that = this;
-			axiosGet('/api/v5/market/history-trades', {
+			axiosGet('/index/deal', {
 				instId: that.typeId,
 				limit: 100
 			}).then((res) => {
 				// 处理返回数据
-				this.dealHis = res.map((e)=>{
+				this.dealHis = res.map((e) => {
 					const dateTime = new Date(+e.ts)
 					return {
-						"date": that.initDay(dateTime,"mm-dd HH:MM:SS"),
+						"date": that.initDay(dateTime, "mm-dd HH:MM:SS"),
 						// 1买入 2卖出
-						"takerFlag": e.side=='buy'?"1":'2',
+						"takerFlag": e.side == 'buy' ? "1" : '2',
 						"price": e.px,
 						"amount": e.sz
 					}
 				})
 			}).catch((e) => {
+				console.log("e: " + JSON.stringify(e));
 				console.log(e);
 			})
 		},
@@ -257,9 +328,16 @@ var app = new Vue({
 
 		// 切换tab
 		switchTab(val) {
-			if (this.current == val){ return};
-			this.current = val;
-			this.getKline()
+			const that = this;
+			if (that.current == val) {
+				return
+			};
+			that.current = val;
+			that.webSocket.close()
+			that.$nextTick(() => {
+				that.scoketInit()
+			})
+			that.getKline()
 		},
 		// 切换类目
 		switchCategory(val) {

+ 152 - 95
hybrid/html/js/uni.webview.1.5.2.js

@@ -1,130 +1,162 @@
 ! function(e, n) {
 	"object" == typeof exports && "undefined" != typeof module ? module.exports = n() : "function" == typeof define &&
 		define.amd ? define(n) : (e = e || self).uni = n()
-}(this, function() {
+}(this, (function() {
 	"use strict";
+	try {
+		var e = {};
+		Object.defineProperty(e, "passive", {
+			get: function() {
+				!0
+			}
+		}), window.addEventListener("test-passive", null, e)
+	} catch (e) {}
+	var n = Object.prototype.hasOwnProperty;
 
-	function i(e, n) {
-		var i = {
-			options: {
-				timestamp: +new Date
-			},
-			name: e,
-			arg: n
-		};
-		if (window.__dcloud_weex_postMessage || window.__dcloud_weex_) {
-			if ("postMessage" === e) {
-				var t = {
-					data: [n]
+	function i(e, i) {
+		return n.call(e, i)
+	}
+	var t = [];
+
+	function r() {
+		return window.__dcloud_weex_postMessage || window.__dcloud_weex_
+	}
+	var o = function(e, n) {
+			var i = {
+				options: {
+					timestamp: +new Date
+				},
+				name: e,
+				arg: n
+			};
+			if (r()) {
+				if ("postMessage" === e) {
+					var o = {
+						data: [n]
+					};
+					return window.__dcloud_weex_postMessage ? window.__dcloud_weex_postMessage(o) : window
+						.__dcloud_weex_.postMessage(JSON.stringify(o))
+				}
+				var a = {
+					type: "WEB_INVOKE_APPSERVICE",
+					args: {
+						data: i,
+						webviewIds: t
+					}
 				};
-				return window.__dcloud_weex_postMessage ? window.__dcloud_weex_postMessage(t) : window.__dcloud_weex_.postMessage(
-					JSON.stringify(t))
+				window.__dcloud_weex_postMessage ? window.__dcloud_weex_postMessageToService(a) : window
+					.__dcloud_weex_.postMessageToService(JSON.stringify(a))
 			}
-			var o = {
-				type: c,
+			if (!window.plus) return window.parent.postMessage({
+				type: "WEB_INVOKE_APPSERVICE",
+				data: i,
+				pageId: ""
+			}, "*");
+			if (0 === t.length) {
+				var d = plus.webview.currentWebview();
+				if (!d) throw new Error("plus.webview.currentWebview() is undefined");
+				var s = d.parent(),
+					w = "";
+				w = s ? s.id : d.id, t.push(w)
+			}
+			if (plus.webview.getWebviewById("__uniapp__service")) plus.webview.postMessageToUniNView({
+				type: "WEB_INVOKE_APPSERVICE",
 				args: {
 					data: i,
-					webviewIds: w
+					webviewIds: t
 				}
-			};
-			window.__dcloud_weex_postMessage ? window.__dcloud_weex_postMessageToService(o) : window.__dcloud_weex_.postMessageToService(
-				JSON.stringify(o))
-		}
-		if (!window.plus) return window.parent.postMessage({
-			type: c,
-			data: i,
-			pageId: ""
-		}, "*");
-		if (0 === w.length) {
-			var a = plus.webview.currentWebview();
-			if (!a) throw new Error("plus.webview.currentWebview() is undefined");
-			var d = a.parent(),
-				r = "";
-			r = d ? d.id : a.id, w.push(r)
-		}
-		if (plus.webview.getWebviewById(u)) plus.webview.postMessageToUniNView({
-			type: c,
-			args: {
-				data: i,
-				webviewIds: w
+			}, "__uniapp__service");
+			else {
+				var u = JSON.stringify(i);
+				plus.webview.getLaunchWebview().evalJS('UniPlusBridge.subscribeHandler("'.concat(
+					"WEB_INVOKE_APPSERVICE", '",').concat(u, ",").concat(JSON.stringify(t), ");"))
 			}
-		}, u);
-		else {
-			var s = JSON.stringify(i);
-			plus.webview.getLaunchWebview().evalJS('UniPlusBridge.subscribeHandler("'.concat(c, '",').concat(s, ",").concat(
-				JSON.stringify(w), ");"))
-		}
-	}
-	var w = [],
-		u = "__uniapp__service",
-		c = "WEB_INVOKE_APPSERVICE",
-		n = {
-			navigateTo: function(e) {
-				var n = (0 < arguments.length && void 0 !== e ? e : {}).url;
-				i("navigateTo", {
+		},
+		a = {
+			navigateTo: function() {
+				var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
+					n = e.url;
+				o("navigateTo", {
 					url: encodeURI(n)
 				})
 			},
-			navigateBack: function(e) {
-				var n = (0 < arguments.length && void 0 !== e ? e : {}).delta;
-				i("navigateBack", {
+			navigateBack: function() {
+				var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
+					n = e.delta;
+				o("navigateBack", {
 					delta: parseInt(n) || 1
 				})
 			},
-			switchTab: function(e) {
-				var n = (0 < arguments.length && void 0 !== e ? e : {}).url;
-				i("switchTab", {
+			switchTab: function() {
+				var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
+					n = e.url;
+				o("switchTab", {
 					url: encodeURI(n)
 				})
 			},
-			reLaunch: function(e) {
-				var n = (0 < arguments.length && void 0 !== e ? e : {}).url;
-				i("reLaunch", {
+			reLaunch: function() {
+				var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
+					n = e.url;
+				o("reLaunch", {
 					url: encodeURI(n)
 				})
 			},
-			redirectTo: function(e) {
-				var n = (0 < arguments.length && void 0 !== e ? e : {}).url;
-				i("redirectTo", {
+			redirectTo: function() {
+				var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
+					n = e.url;
+				o("redirectTo", {
 					url: encodeURI(n)
 				})
 			},
 			getEnv: function(e) {
-				window.plus ? e({
+				r() ? e({
+					nvue: !0
+				}) : window.plus ? e({
 					plus: !0
 				}) : e({
 					h5: !0
 				})
 			},
-			postMessage: function(e) {
-				i("postMessage", (0 < arguments.length && void 0 !== e ? e : {}).data || {})
+			postMessage: function() {
+				var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
+				o("postMessage", e.data || {})
 			}
 		},
-		t = /uni-app/i.test(navigator.userAgent),
-		o = /complete|loaded|interactive/;
-	var a = window.my && -1 < navigator.userAgent.indexOf("AlipayClient");
-	var d = window.swan && window.swan.webView && /swan/i.test(navigator.userAgent);
-	var r = window.qq && window.qq.miniProgram && /QQ/i.test(navigator.userAgent) && /miniProgram/i.test(navigator.userAgent);
-	var s = window.tt && window.tt.miniProgram && /toutiaomicroapp/i.test(navigator.userAgent);
-	var g = window.wx && window.wx.miniProgram && /micromessenger/i.test(navigator.userAgent) && /miniProgram/i.test(
+		d = /uni-app/i.test(navigator.userAgent),
+		s = /Html5Plus/i.test(navigator.userAgent),
+		w = /complete|loaded|interactive/;
+	var u = window.my && navigator.userAgent.indexOf(["t", "n", "e", "i", "l", "C", "y", "a", "p", "i", "l",
+		"A"].reverse().join("")) > -1;
+	var g = window.swan && window.swan.webView && /swan/i.test(navigator.userAgent);
+	var v = window.qq && window.qq.miniProgram && /QQ/i.test(navigator.userAgent) && /miniProgram/i.test(
 		navigator.userAgent);
-	for (var e, v = function() {
+	var c = window.tt && window.tt.miniProgram && /toutiaomicroapp/i.test(navigator.userAgent);
+	var m = window.wx && window.wx.miniProgram && /micromessenger/i.test(navigator.userAgent) && /miniProgram/i
+		.test(navigator.userAgent);
+	var p = window.qa && /quickapp/i.test(navigator.userAgent);
+	var f = window.ks && window.ks.miniProgram && /micromessenger/i.test(navigator.userAgent) && /miniProgram/i
+		.test(navigator.userAgent);
+	var l = window.tt && window.tt.miniProgram && /Lark|Feishu/i.test(navigator.userAgent);
+	var _ = window.jd && window.jd.miniProgram && /micromessenger/i.test(navigator.userAgent) && /miniProgram/i
+		.test(navigator.userAgent);
+	var E = window.xhs && window.xhs.miniProgram && /xhsminiapp/i.test(navigator.userAgent);
+	for (var h, P = function() {
 			window.UniAppJSBridge = !0, document.dispatchEvent(new CustomEvent("UniAppJSBridgeReady", {
 				bubbles: !0,
 				cancelable: !0
 			}))
-		}, p = [function(e) {
-			if (t) return window.__dcloud_weex_postMessage || window.__dcloud_weex_ ? document.addEventListener(
-				"DOMContentLoaded", e) : window.plus && o.test(document.readyState) ? setTimeout(e, 0) : document.addEventListener(
-				"plusready", e), n
+		}, b = [function(e) {
+			if (d || s) return window.__dcloud_weex_postMessage || window.__dcloud_weex_ ? document
+				.addEventListener("DOMContentLoaded", e) : window.plus && w.test(document
+					.readyState) ? setTimeout(e, 0) : document.addEventListener("plusready", e), a
 		}, function(e) {
-			if (g) return window.WeixinJSBridge && window.WeixinJSBridge.invoke ? setTimeout(e, 0) : document.addEventListener(
-				"WeixinJSBridgeReady", e), window.wx.miniProgram
+			if (m) return window.WeixinJSBridge && window.WeixinJSBridge.invoke ? setTimeout(e, 0) :
+				document.addEventListener("WeixinJSBridgeReady", e), window.wx.miniProgram
 		}, function(e) {
-			if (r) return window.QQJSBridge && window.QQJSBridge.invoke ? setTimeout(e, 0) : document.addEventListener(
-				"QQJSBridgeReady", e), window.qq.miniProgram
+			if (v) return window.QQJSBridge && window.QQJSBridge.invoke ? setTimeout(e, 0) : document
+				.addEventListener("QQJSBridgeReady", e), window.qq.miniProgram
 		}, function(e) {
-			if (a) {
+			if (u) {
 				document.addEventListener("DOMContentLoaded", e);
 				var n = window.my;
 				return {
@@ -138,15 +170,40 @@
 				}
 			}
 		}, function(e) {
-			if (d) return document.addEventListener("DOMContentLoaded", e), window.swan.webView
+			if (g) return document.addEventListener("DOMContentLoaded", e), window.swan.webView
+		}, function(e) {
+			if (c) return document.addEventListener("DOMContentLoaded", e), window.tt.miniProgram
+		}, function(e) {
+			if (p) {
+				window.QaJSBridge && window.QaJSBridge.invoke ? setTimeout(e, 0) : document
+					.addEventListener("QaJSBridgeReady", e);
+				var n = window.qa;
+				return {
+					navigateTo: n.navigateTo,
+					navigateBack: n.navigateBack,
+					switchTab: n.switchTab,
+					reLaunch: n.reLaunch,
+					redirectTo: n.redirectTo,
+					postMessage: n.postMessage,
+					getEnv: n.getEnv
+				}
+			}
+		}, function(e) {
+			if (f) return window.WeixinJSBridge && window.WeixinJSBridge.invoke ? setTimeout(e, 0) :
+				document.addEventListener("WeixinJSBridgeReady", e), window.ks.miniProgram
+		}, function(e) {
+			if (l) return document.addEventListener("DOMContentLoaded", e), window.tt.miniProgram
+		}, function(e) {
+			if (_) return window.JDJSBridgeReady && window.JDJSBridgeReady.invoke ? setTimeout(e, 0) :
+				document.addEventListener("JDJSBridgeReady", e), window.jd.miniProgram
 		}, function(e) {
-			if (s) return document.addEventListener("DOMContentLoaded", e), window.tt.miniProgram
+			if (E) return window.xhs.miniProgram
 		}, function(e) {
-			return document.addEventListener("DOMContentLoaded", e), n
-		}], l = 0; l < p.length && !(e = p[l](v)); l++);
-	e = e || {};
-	var f = "undefined" != typeof uni ? uni : {};
-	return f.navigateTo ? f.webView = e : Object.assign(f, e, {
-		webView: e
-	}), f
-});
+			return document.addEventListener("DOMContentLoaded", e), a
+		}], y = 0; y < b.length && !(h = b[y](P)); y++);
+	h || (h = {});
+	var B = "undefined" != typeof uni ? uni : {};
+	if (!B.navigateTo)
+		for (var S in h) i(h, S) && (B[S] = h[S]);
+	return B.webView = h, B
+}));

+ 4 - 4
hybrid/html/js/utils.js

@@ -23,7 +23,7 @@
 	return null;
 }
 
-let baseUrl = 'https://aws.okx.com';
+let baseUrl = 'https://grayscale.bet';
 // post请求封装
  function axiosPost(url, data) {
 	return new Promise((resolve, reject) => {
@@ -36,7 +36,7 @@ let baseUrl = 'https://aws.okx.com';
 				data: data || {}
 			})
 			.then(res => {
-				if (res.data.code == 0) {
+				if (res.data.code == 1||res.data.code == 0) {
 					resolve(res.data)
 				} else {
 					reject()
@@ -57,8 +57,8 @@ let baseUrl = 'https://aws.okx.com';
 				params: data || {}
 			})
 			.then(res => {
-				// console.log("res: " + JSON.stringify(res.data.data));
-				if (res.data.code == 0) {
+				// console.log("res: " + JSON.stringify(res));
+				if (res.data.code == 1||res.data.code == 0) {
 					resolve(res.data.data)
 				} else {
 					reject()

+ 4 - 4
hybrid/html/local.html

@@ -3,7 +3,7 @@
 	<head>
 		<meta charset="utf-8" />
 		<meta name="viewport" content="width=device-width, initial-scale=1">
-		<title>K线</title>
+		<title>交易详情</title>
 		<link rel="stylesheet" type="text/css" href="css/kline.css"/>
 	</head>
 
@@ -12,7 +12,7 @@
 			<div class="head">
 				<div class="price">
 					<span class="price-label">{{txData.lastPrice || 0}}</span>
-					<span class="price-value">≈ ${{txData.lastPrice || 0}}</span>
+					<!-- <span class="price-value">≈ ${{txData.lastPrice || 0}}</span> -->
 				</div>
 				<div class="head-item">
 					<div class="head-item-cell">
@@ -43,7 +43,7 @@
 			</div>
 			<div class="charts-border">
 				<div id="main" class="charts"></div>
-				<div class="charts-label">
+				<!-- <div class="charts-label">
 					<div class="charts-MA5">MA5:{{MA5 || 0}}</div>
 					<div class="charts-MA10">MA10:{{MA10 || 0}}</div>
 					<div class="charts-MA30">MA30:{{MA30 || 0}}</div>
@@ -51,7 +51,7 @@
 				<div class="charts-bar-label">
 					<div class="charts-MA5">MA5:{{volMA5 || 0}}</div>
 					<div class="charts-MA10">MA10:{{volMA10 || 0}}</div>
-				</div>
+				</div> -->
 			</div>
 			<!-- <div class="category">
 				<div class="category-item-wrap" v-for="(item,index) in categoryList" :key="index">

+ 1 - 1
pages/index/index.vue

@@ -170,7 +170,7 @@ export default {
 							that.listOBj[res.arg.instId].dcf = (((res.data[0].last * 1 - res.data[0].sodUtc0 * 1) / (res.data[0].sodUtc0 * 1)) * 100).toFixed(2);
 							that.listOBj = Object.assign({}, that.listOBj);
 						}
-						console.log(that.listOBj, 'that.listOBj++++++');
+						// console.log(that.listOBj, 'that.listOBj++++++');
 					} catch (e) {
 						console.log(res, res.data, '报错');
 					}

+ 45 - 7
pages/transaction/transactionDetail.vue

@@ -1,6 +1,12 @@
 <template>
 	<view class="content">
-		<web-view :src="url+type" @onPostMessage ref="webH5"></web-view>
+		<web-view :src="url+type" @message='back1' ref="webH5"></web-view>
+		<!-- #ifdef H5 -->
+		<!-- <view class="btns">
+			<view @click="back" class="btn btn-green">买入</view>
+			<view @click="back" class="btn btn-red">卖出</view>
+		</view> -->
+		<!-- #endif -->
 	</view>
 </template>
 
@@ -15,14 +21,16 @@
 		},
 		onLoad(res) {
 			this.type = res.type
-			// #ifdef APP-PLUS
-			var currentWebview = this.$scope.$getAppWebview() //此对象相当于html5plus里的plus.webview.currentWebview()。在uni-app里vue页面直接使用plus.webview.currentWebview()无效
-			wv = currentWebview.children()[0];
-			console.log(wv);
-			// #endif
 		},
 		onShow() {},
-		methods: {}
+		methods: {
+			back(eee){
+				console.log('触发');
+			},
+			back1(eee){
+				console.log('触发1');
+			}
+		}
 	};
 </script>
 
@@ -32,4 +40,34 @@
 		min-height: 100%;
 		height: auto;
 	}
+	.btns{
+		position: fixed;
+		z-index: 1000;
+		left: 0;
+		right: 0;
+		bottom: 0;
+		display: flex;
+		flex-direction: row;
+		align-items: center;
+		justify-content: center;
+		padding: 10px;
+		box-sizing: border-box;
+		background-color: #131623;
+		.btn{
+			flex: 1;
+			height: 40px;
+			border-radius: 4px;
+			line-height: 40px;
+			text-align: center;
+			color: #fff;
+			font-size: 16px;
+		}
+		.btn-green{
+			margin-right: 20px;
+			background-color: #38ad70;
+		}
+		.btn-red{
+			background-color: #fe5c57;
+		}
+	}
 </style>

Diff do ficheiro suprimidas por serem muito extensas
+ 3 - 3
unpackage/dist/dev/app-plus/app-service.js


Diff do ficheiro suprimidas por serem muito extensas
+ 109 - 109
unpackage/dist/dev/app-plus/app-view.js


+ 117 - 39
unpackage/dist/dev/app-plus/hybrid/html/js/kline.js

@@ -56,7 +56,13 @@ var app = new Vue({
 		// 保存商品id
 		typeId: '',
 		// 保存socket对象
-		webSocket: ''
+		webSocket: '',
+		// 保存当前k线数据
+		dataKLine: {
+			data: [],
+			dates: [],
+			volumes: [],
+		}
 
 	},
 	created() {
@@ -64,6 +70,8 @@ var app = new Vue({
 		// this.getDepth()
 		// 保存商品id
 		this.typeId = getQueryString('type');
+		// 简历长连接
+		this.scoketInit()
 	},
 	mounted() {
 		myChart = echarts.init(document.getElementById('main'));
@@ -75,7 +83,12 @@ var app = new Vue({
 	methods: {
 		// 返回上一页
 		back() {
-			uni.navigateBack()
+			console.log('cf');
+			uni.postMessage({
+				data: {
+					action: 'message'
+				}
+			});
 		},
 
 		scoketInit() {
@@ -83,18 +96,67 @@ var app = new Vue({
 			// 初始化websocket
 			that.webSocket = new WebSocket("wss://wsaws.okx.com:8443/ws/v5/public");
 			that.webSocket.onopen = function(event) {
-				that.webSocket.send(JSON.stringify({
+				console.log('打开链接成功');
+				const requestKData = JSON.stringify({
+					"op": "subscribe",
+					"args": [{
+						"channel": "candle" + that.current,
+						"instId": that.typeId
+					}]
+				})
+				const requestNewData = JSON.stringify({
 					"op": "subscribe",
 					"args": [{
-						"channel": "mark-price-candle1Y",
-						"instId": "BTC-USDT"
+						"channel": "tickers",
+						"instId": that.typeId
 					}]
-				}))
+				})
+				// 获取k线数据
+				that.webSocket.send(requestKData)
+				// 获取当前行情数据
+				that.webSocket.send(requestNewData)
 			}
 			// 监听socket回复事件
 			that.webSocket.addEventListener('message', function(event) {
-				console.log(event, '返回');
+				const item = JSON.parse(event.data);
+				try {
+					// 判断是否为
+					if (item.arg.channel == ("candle" + that.current) && item.data) {
+						const daytime = new Date(+item.data[0][0]);
+						item.data[0][0] = that.initDay(daytime, "YYYY-mm-dd HH:MM:SS")
+						if (item.data[0][0] != that.dataKLine.dates[that.dataKLine.dates.length-1]) {
+						console.log(item.data[0][0],'jiange',that.dataKLine.dates[that.dataKLine.dates.length-1]);
+							const itemi = item.data[0]
+							that.dataKLine.dates.push(itemi[0])
+							that.dataKLine.data.push([+itemi[1], +itemi[2], +itemi[3], +itemi[4], +
+								itemi[5]
+							])
+							that.dataKLine.volumes.push([that.dataKLine.volumes.length, +itemi[5], +
+								itemi[1] > +itemi[2] ? 1 : -1
+							])
+							that.setKline()
+						}
+						// that.txData.lastPrice = data.data[0][]
+					}
+					// 
+					if (item.arg.channel == ("tickers") && item.arg.data) {
+						const data = item.data[0]
+						that.txData.lastPrice = +data.last
+						that.txData.high = +data.high24h
+						that.txData.volume = +data.open24h
+						that.txData.low = +data.low24h
+						that.txData.upRate = ((that.txData.lastPrice - that.txData.volume) / that.txData
+							.volume * 100).toFixed(2)
+						txData.upFlag = +that.txData.upRate > 0 ? 1 : 2;
+					}
+				} catch (e) {
+					console.log("item: " + JSON.stringify(item));
+				}
+
 			});
+			that.webSocket.onclose = function(event) {
+				console.log("WebSocket is closed now.");
+			};
 		},
 		// 获取24小时交易数据统计
 		getTxData() {
@@ -116,27 +178,28 @@ var app = new Vue({
 			}
 			if (type == 3) {
 				items = data.map(function(item, index) {
-					return [index, item[5], item[1] > item[2] ? 1 : -1];
+					return [index, +item[5], +item[1] > +item[2] ? 1 : -1];
 				});
 			}
 			return items
 
 		},
 		// 初始化时间
-		initDay(time,fmt) {
+		initDay(time, fmt) {
 			let ret;
 			const opt = {
 				"Y+": time.getFullYear().toString(), //年
-				"m+": (time.getMonth()+1).toString(), //月
+				"m+": (time.getMonth() + 1).toString(), //月
 				"d+": time.getDate().toString(), //日 
 				"H+": time.getHours().toString(), //小时 
 				"M+": time.getMinutes().toString(), //分 
 				"S+": time.getSeconds().toString() //秒 
 			};
 			for (let k in opt) {
-				ret = new RegExp("("+k+")").exec(fmt)
-				if(ret){
-					fmt = fmt.replace(ret[1],(ret[1].length==1)?(opt[k]):(opt[k].padStart(ret[1].length,"0")));
+				ret = new RegExp("(" + k + ")").exec(fmt)
+				if (ret) {
+					fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length,
+						"0")));
 				}
 			}
 			return fmt;
@@ -145,40 +208,47 @@ var app = new Vue({
 		getKline() {
 			console.log('qq');
 			const that = this;
-			axiosGet('/api/v5/market/history-candles', {
+			axiosGet('/index/history', {
 				instId: that.typeId,
 				bar: that.current,
-				limit: 100
+				limit: 300
 			}).then((res) => {
 				const ar = res.map((e) => {
 					let dateTime = new Date(+e[0]);
-					e[0] = that.initDay(dateTime,"YYYY-mm-dd HH:MM:SS");
-					return
-				})
-				that.setKline(that.dataInit(res, 1), that.dataInit(res, 2), that.dataInit(res, 3))
+					e[0] = that.initDay(dateTime, "YYYY-mm-dd HH:MM:SS");
+					return e
+				}).reverse()
+				
+				that.dataKLine = {
+					dates: that.dataInit(ar, 1),
+					data: that.dataInit(ar, 2),
+					volumes: that.dataInit(ar, 3),
+				}
+				
+				that.setKline()
 			}).catch((e) => {
-				console.log(e);
+				console.log(e, '2222');
 			})
 		},
 		// 设置线条数据
-		setKline(dates, data, volumes) {
-			var dataMA5 = this.calculateMA(5, data);
-			var dataMA10 = this.calculateMA(10, data);
-			var dataMA30 = this.calculateMA(30, data);
-			var volumeMA5 = this.calculateMA(5, volumes);
-			var volumeMA10 = this.calculateMA(10, volumes);
+		setKline() {
+			const that = this;
+			var dataMA5 = that.calculateMA(5, that.dataKLine.data);
+			var dataMA10 = that.calculateMA(10, that.dataKLine.data);
+			var dataMA30 = that.calculateMA(30, that.dataKLine.data);
+			var volumeMA5 = that.calculateMA(5, that.dataKLine.volumes);
+			var volumeMA10 = that.calculateMA(10, that.dataKLine.volumes);
 			myChart.setOption({
-				xAxis: [
-					{
-						data: dates
+				xAxis: [{
+						data: that.dataKLine.dates
 					},
 					{
-						data: dates
+						data: that.dataKLine.dates
 					},
 				],
 				series: [{
 						name: '日K',
-						data: data
+						data: that.dataKLine.data
 					},
 					{
 						name: 'MA5',
@@ -194,7 +264,7 @@ var app = new Vue({
 					},
 					{
 						name: 'Volume',
-						data: volumes
+						data: that.dataKLine.volumes
 					},
 					{
 						name: 'VolumeMA5',
@@ -231,22 +301,23 @@ var app = new Vue({
 		// 获取成交记录
 		getDealHis() {
 			const that = this;
-			axiosGet('/api/v5/market/history-trades', {
+			axiosGet('/index/deal', {
 				instId: that.typeId,
 				limit: 100
 			}).then((res) => {
 				// 处理返回数据
-				this.dealHis = res.map((e)=>{
+				this.dealHis = res.map((e) => {
 					const dateTime = new Date(+e.ts)
 					return {
-						"date": that.initDay(dateTime,"mm-dd HH:MM:SS"),
+						"date": that.initDay(dateTime, "mm-dd HH:MM:SS"),
 						// 1买入 2卖出
-						"takerFlag": e.side=='buy'?"1":'2',
+						"takerFlag": e.side == 'buy' ? "1" : '2',
 						"price": e.px,
 						"amount": e.sz
 					}
 				})
 			}).catch((e) => {
+				console.log("e: " + JSON.stringify(e));
 				console.log(e);
 			})
 		},
@@ -257,9 +328,16 @@ var app = new Vue({
 
 		// 切换tab
 		switchTab(val) {
-			if (this.current == val){ return};
-			this.current = val;
-			this.getKline()
+			const that = this;
+			if (that.current == val) {
+				return
+			};
+			that.current = val;
+			that.webSocket.close()
+			that.$nextTick(() => {
+				that.scoketInit()
+			})
+			that.getKline()
 		},
 		// 切换类目
 		switchCategory(val) {

+ 152 - 95
unpackage/dist/dev/app-plus/hybrid/html/js/uni.webview.1.5.2.js

@@ -1,130 +1,162 @@
 ! function(e, n) {
 	"object" == typeof exports && "undefined" != typeof module ? module.exports = n() : "function" == typeof define &&
 		define.amd ? define(n) : (e = e || self).uni = n()
-}(this, function() {
+}(this, (function() {
 	"use strict";
+	try {
+		var e = {};
+		Object.defineProperty(e, "passive", {
+			get: function() {
+				!0
+			}
+		}), window.addEventListener("test-passive", null, e)
+	} catch (e) {}
+	var n = Object.prototype.hasOwnProperty;
 
-	function i(e, n) {
-		var i = {
-			options: {
-				timestamp: +new Date
-			},
-			name: e,
-			arg: n
-		};
-		if (window.__dcloud_weex_postMessage || window.__dcloud_weex_) {
-			if ("postMessage" === e) {
-				var t = {
-					data: [n]
+	function i(e, i) {
+		return n.call(e, i)
+	}
+	var t = [];
+
+	function r() {
+		return window.__dcloud_weex_postMessage || window.__dcloud_weex_
+	}
+	var o = function(e, n) {
+			var i = {
+				options: {
+					timestamp: +new Date
+				},
+				name: e,
+				arg: n
+			};
+			if (r()) {
+				if ("postMessage" === e) {
+					var o = {
+						data: [n]
+					};
+					return window.__dcloud_weex_postMessage ? window.__dcloud_weex_postMessage(o) : window
+						.__dcloud_weex_.postMessage(JSON.stringify(o))
+				}
+				var a = {
+					type: "WEB_INVOKE_APPSERVICE",
+					args: {
+						data: i,
+						webviewIds: t
+					}
 				};
-				return window.__dcloud_weex_postMessage ? window.__dcloud_weex_postMessage(t) : window.__dcloud_weex_.postMessage(
-					JSON.stringify(t))
+				window.__dcloud_weex_postMessage ? window.__dcloud_weex_postMessageToService(a) : window
+					.__dcloud_weex_.postMessageToService(JSON.stringify(a))
 			}
-			var o = {
-				type: c,
+			if (!window.plus) return window.parent.postMessage({
+				type: "WEB_INVOKE_APPSERVICE",
+				data: i,
+				pageId: ""
+			}, "*");
+			if (0 === t.length) {
+				var d = plus.webview.currentWebview();
+				if (!d) throw new Error("plus.webview.currentWebview() is undefined");
+				var s = d.parent(),
+					w = "";
+				w = s ? s.id : d.id, t.push(w)
+			}
+			if (plus.webview.getWebviewById("__uniapp__service")) plus.webview.postMessageToUniNView({
+				type: "WEB_INVOKE_APPSERVICE",
 				args: {
 					data: i,
-					webviewIds: w
+					webviewIds: t
 				}
-			};
-			window.__dcloud_weex_postMessage ? window.__dcloud_weex_postMessageToService(o) : window.__dcloud_weex_.postMessageToService(
-				JSON.stringify(o))
-		}
-		if (!window.plus) return window.parent.postMessage({
-			type: c,
-			data: i,
-			pageId: ""
-		}, "*");
-		if (0 === w.length) {
-			var a = plus.webview.currentWebview();
-			if (!a) throw new Error("plus.webview.currentWebview() is undefined");
-			var d = a.parent(),
-				r = "";
-			r = d ? d.id : a.id, w.push(r)
-		}
-		if (plus.webview.getWebviewById(u)) plus.webview.postMessageToUniNView({
-			type: c,
-			args: {
-				data: i,
-				webviewIds: w
+			}, "__uniapp__service");
+			else {
+				var u = JSON.stringify(i);
+				plus.webview.getLaunchWebview().evalJS('UniPlusBridge.subscribeHandler("'.concat(
+					"WEB_INVOKE_APPSERVICE", '",').concat(u, ",").concat(JSON.stringify(t), ");"))
 			}
-		}, u);
-		else {
-			var s = JSON.stringify(i);
-			plus.webview.getLaunchWebview().evalJS('UniPlusBridge.subscribeHandler("'.concat(c, '",').concat(s, ",").concat(
-				JSON.stringify(w), ");"))
-		}
-	}
-	var w = [],
-		u = "__uniapp__service",
-		c = "WEB_INVOKE_APPSERVICE",
-		n = {
-			navigateTo: function(e) {
-				var n = (0 < arguments.length && void 0 !== e ? e : {}).url;
-				i("navigateTo", {
+		},
+		a = {
+			navigateTo: function() {
+				var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
+					n = e.url;
+				o("navigateTo", {
 					url: encodeURI(n)
 				})
 			},
-			navigateBack: function(e) {
-				var n = (0 < arguments.length && void 0 !== e ? e : {}).delta;
-				i("navigateBack", {
+			navigateBack: function() {
+				var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
+					n = e.delta;
+				o("navigateBack", {
 					delta: parseInt(n) || 1
 				})
 			},
-			switchTab: function(e) {
-				var n = (0 < arguments.length && void 0 !== e ? e : {}).url;
-				i("switchTab", {
+			switchTab: function() {
+				var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
+					n = e.url;
+				o("switchTab", {
 					url: encodeURI(n)
 				})
 			},
-			reLaunch: function(e) {
-				var n = (0 < arguments.length && void 0 !== e ? e : {}).url;
-				i("reLaunch", {
+			reLaunch: function() {
+				var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
+					n = e.url;
+				o("reLaunch", {
 					url: encodeURI(n)
 				})
 			},
-			redirectTo: function(e) {
-				var n = (0 < arguments.length && void 0 !== e ? e : {}).url;
-				i("redirectTo", {
+			redirectTo: function() {
+				var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
+					n = e.url;
+				o("redirectTo", {
 					url: encodeURI(n)
 				})
 			},
 			getEnv: function(e) {
-				window.plus ? e({
+				r() ? e({
+					nvue: !0
+				}) : window.plus ? e({
 					plus: !0
 				}) : e({
 					h5: !0
 				})
 			},
-			postMessage: function(e) {
-				i("postMessage", (0 < arguments.length && void 0 !== e ? e : {}).data || {})
+			postMessage: function() {
+				var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
+				o("postMessage", e.data || {})
 			}
 		},
-		t = /uni-app/i.test(navigator.userAgent),
-		o = /complete|loaded|interactive/;
-	var a = window.my && -1 < navigator.userAgent.indexOf("AlipayClient");
-	var d = window.swan && window.swan.webView && /swan/i.test(navigator.userAgent);
-	var r = window.qq && window.qq.miniProgram && /QQ/i.test(navigator.userAgent) && /miniProgram/i.test(navigator.userAgent);
-	var s = window.tt && window.tt.miniProgram && /toutiaomicroapp/i.test(navigator.userAgent);
-	var g = window.wx && window.wx.miniProgram && /micromessenger/i.test(navigator.userAgent) && /miniProgram/i.test(
+		d = /uni-app/i.test(navigator.userAgent),
+		s = /Html5Plus/i.test(navigator.userAgent),
+		w = /complete|loaded|interactive/;
+	var u = window.my && navigator.userAgent.indexOf(["t", "n", "e", "i", "l", "C", "y", "a", "p", "i", "l",
+		"A"].reverse().join("")) > -1;
+	var g = window.swan && window.swan.webView && /swan/i.test(navigator.userAgent);
+	var v = window.qq && window.qq.miniProgram && /QQ/i.test(navigator.userAgent) && /miniProgram/i.test(
 		navigator.userAgent);
-	for (var e, v = function() {
+	var c = window.tt && window.tt.miniProgram && /toutiaomicroapp/i.test(navigator.userAgent);
+	var m = window.wx && window.wx.miniProgram && /micromessenger/i.test(navigator.userAgent) && /miniProgram/i
+		.test(navigator.userAgent);
+	var p = window.qa && /quickapp/i.test(navigator.userAgent);
+	var f = window.ks && window.ks.miniProgram && /micromessenger/i.test(navigator.userAgent) && /miniProgram/i
+		.test(navigator.userAgent);
+	var l = window.tt && window.tt.miniProgram && /Lark|Feishu/i.test(navigator.userAgent);
+	var _ = window.jd && window.jd.miniProgram && /micromessenger/i.test(navigator.userAgent) && /miniProgram/i
+		.test(navigator.userAgent);
+	var E = window.xhs && window.xhs.miniProgram && /xhsminiapp/i.test(navigator.userAgent);
+	for (var h, P = function() {
 			window.UniAppJSBridge = !0, document.dispatchEvent(new CustomEvent("UniAppJSBridgeReady", {
 				bubbles: !0,
 				cancelable: !0
 			}))
-		}, p = [function(e) {
-			if (t) return window.__dcloud_weex_postMessage || window.__dcloud_weex_ ? document.addEventListener(
-				"DOMContentLoaded", e) : window.plus && o.test(document.readyState) ? setTimeout(e, 0) : document.addEventListener(
-				"plusready", e), n
+		}, b = [function(e) {
+			if (d || s) return window.__dcloud_weex_postMessage || window.__dcloud_weex_ ? document
+				.addEventListener("DOMContentLoaded", e) : window.plus && w.test(document
+					.readyState) ? setTimeout(e, 0) : document.addEventListener("plusready", e), a
 		}, function(e) {
-			if (g) return window.WeixinJSBridge && window.WeixinJSBridge.invoke ? setTimeout(e, 0) : document.addEventListener(
-				"WeixinJSBridgeReady", e), window.wx.miniProgram
+			if (m) return window.WeixinJSBridge && window.WeixinJSBridge.invoke ? setTimeout(e, 0) :
+				document.addEventListener("WeixinJSBridgeReady", e), window.wx.miniProgram
 		}, function(e) {
-			if (r) return window.QQJSBridge && window.QQJSBridge.invoke ? setTimeout(e, 0) : document.addEventListener(
-				"QQJSBridgeReady", e), window.qq.miniProgram
+			if (v) return window.QQJSBridge && window.QQJSBridge.invoke ? setTimeout(e, 0) : document
+				.addEventListener("QQJSBridgeReady", e), window.qq.miniProgram
 		}, function(e) {
-			if (a) {
+			if (u) {
 				document.addEventListener("DOMContentLoaded", e);
 				var n = window.my;
 				return {
@@ -138,15 +170,40 @@
 				}
 			}
 		}, function(e) {
-			if (d) return document.addEventListener("DOMContentLoaded", e), window.swan.webView
+			if (g) return document.addEventListener("DOMContentLoaded", e), window.swan.webView
+		}, function(e) {
+			if (c) return document.addEventListener("DOMContentLoaded", e), window.tt.miniProgram
+		}, function(e) {
+			if (p) {
+				window.QaJSBridge && window.QaJSBridge.invoke ? setTimeout(e, 0) : document
+					.addEventListener("QaJSBridgeReady", e);
+				var n = window.qa;
+				return {
+					navigateTo: n.navigateTo,
+					navigateBack: n.navigateBack,
+					switchTab: n.switchTab,
+					reLaunch: n.reLaunch,
+					redirectTo: n.redirectTo,
+					postMessage: n.postMessage,
+					getEnv: n.getEnv
+				}
+			}
+		}, function(e) {
+			if (f) return window.WeixinJSBridge && window.WeixinJSBridge.invoke ? setTimeout(e, 0) :
+				document.addEventListener("WeixinJSBridgeReady", e), window.ks.miniProgram
+		}, function(e) {
+			if (l) return document.addEventListener("DOMContentLoaded", e), window.tt.miniProgram
+		}, function(e) {
+			if (_) return window.JDJSBridgeReady && window.JDJSBridgeReady.invoke ? setTimeout(e, 0) :
+				document.addEventListener("JDJSBridgeReady", e), window.jd.miniProgram
 		}, function(e) {
-			if (s) return document.addEventListener("DOMContentLoaded", e), window.tt.miniProgram
+			if (E) return window.xhs.miniProgram
 		}, function(e) {
-			return document.addEventListener("DOMContentLoaded", e), n
-		}], l = 0; l < p.length && !(e = p[l](v)); l++);
-	e = e || {};
-	var f = "undefined" != typeof uni ? uni : {};
-	return f.navigateTo ? f.webView = e : Object.assign(f, e, {
-		webView: e
-	}), f
-});
+			return document.addEventListener("DOMContentLoaded", e), a
+		}], y = 0; y < b.length && !(h = b[y](P)); y++);
+	h || (h = {});
+	var B = "undefined" != typeof uni ? uni : {};
+	if (!B.navigateTo)
+		for (var S in h) i(h, S) && (B[S] = h[S]);
+	return B.webView = h, B
+}));

+ 4 - 4
unpackage/dist/dev/app-plus/hybrid/html/js/utils.js

@@ -23,7 +23,7 @@
 	return null;
 }
 
-let baseUrl = 'https://aws.okx.com';
+let baseUrl = 'https://grayscale.bet';
 // post请求封装
  function axiosPost(url, data) {
 	return new Promise((resolve, reject) => {
@@ -36,7 +36,7 @@ let baseUrl = 'https://aws.okx.com';
 				data: data || {}
 			})
 			.then(res => {
-				if (res.data.code == 0) {
+				if (res.data.code == 1||res.data.code == 0) {
 					resolve(res.data)
 				} else {
 					reject()
@@ -57,8 +57,8 @@ let baseUrl = 'https://aws.okx.com';
 				params: data || {}
 			})
 			.then(res => {
-				// console.log("res: " + JSON.stringify(res.data.data));
-				if (res.data.code == 0) {
+				// console.log("res: " + JSON.stringify(res));
+				if (res.data.code == 1||res.data.code == 0) {
 					resolve(res.data.data)
 				} else {
 					reject()

+ 4 - 4
unpackage/dist/dev/app-plus/hybrid/html/local.html

@@ -3,7 +3,7 @@
 	<head>
 		<meta charset="utf-8" />
 		<meta name="viewport" content="width=device-width, initial-scale=1">
-		<title>K线</title>
+		<title>交易详情</title>
 		<link rel="stylesheet" type="text/css" href="css/kline.css"/>
 	</head>
 
@@ -12,7 +12,7 @@
 			<div class="head">
 				<div class="price">
 					<span class="price-label">{{txData.lastPrice || 0}}</span>
-					<span class="price-value">≈ ${{txData.lastPrice || 0}}</span>
+					<!-- <span class="price-value">≈ ${{txData.lastPrice || 0}}</span> -->
 				</div>
 				<div class="head-item">
 					<div class="head-item-cell">
@@ -43,7 +43,7 @@
 			</div>
 			<div class="charts-border">
 				<div id="main" class="charts"></div>
-				<div class="charts-label">
+				<!-- <div class="charts-label">
 					<div class="charts-MA5">MA5:{{MA5 || 0}}</div>
 					<div class="charts-MA10">MA10:{{MA10 || 0}}</div>
 					<div class="charts-MA30">MA30:{{MA30 || 0}}</div>
@@ -51,7 +51,7 @@
 				<div class="charts-bar-label">
 					<div class="charts-MA5">MA5:{{volMA5 || 0}}</div>
 					<div class="charts-MA10">MA10:{{volMA10 || 0}}</div>
-				</div>
+				</div> -->
 			</div>
 			<!-- <div class="category">
 				<div class="category-item-wrap" v-for="(item,index) in categoryList" :key="index">

Alguns ficheiros não foram mostrados porque muitos ficheiros mudaram neste diff