|
|
|
@ -24,7 +24,8 @@ export default { |
|
|
|
data() { |
|
|
|
return { |
|
|
|
model: null, // 数据模型 |
|
|
|
interval: "1D" // [字符串格式]和TV的resolution同步 |
|
|
|
interval: "1D" ,// [字符串格式]和TV的resolution同步 |
|
|
|
intertime: '' |
|
|
|
}; |
|
|
|
}, |
|
|
|
|
|
|
|
@ -97,7 +98,39 @@ export default { |
|
|
|
} |
|
|
|
return period; |
|
|
|
}, |
|
|
|
|
|
|
|
translateInterval2Period1() { |
|
|
|
let period1; |
|
|
|
switch (this.intertime) { |
|
|
|
case "1": |
|
|
|
period1 = "1min"; |
|
|
|
break; |
|
|
|
case "5": |
|
|
|
period1 = "5min"; |
|
|
|
break; |
|
|
|
case "15": |
|
|
|
period1 = "15min"; |
|
|
|
break; |
|
|
|
case "30": |
|
|
|
period1 = "30min"; |
|
|
|
break; |
|
|
|
case "60": |
|
|
|
period1 = "60min"; |
|
|
|
break; |
|
|
|
case "D": |
|
|
|
case "1D": |
|
|
|
period1 = "1day"; |
|
|
|
break; |
|
|
|
case "W": |
|
|
|
case "1W": |
|
|
|
period1 = "1week"; |
|
|
|
break; |
|
|
|
case "M": |
|
|
|
case "1M": |
|
|
|
period1 = "1mon"; |
|
|
|
break; |
|
|
|
} |
|
|
|
return period1; |
|
|
|
}, |
|
|
|
// 创建分时按钮 |
|
|
|
createBtns() { |
|
|
|
const model = this.model; |
|
|
|
@ -274,10 +307,27 @@ export default { |
|
|
|
// 获取历史记录数据 |
|
|
|
getHistoryCallback(onLoadCallback) { |
|
|
|
// 取图表回传的solution |
|
|
|
this.intertime = this.interval; |
|
|
|
this.interval = this.model.interval; |
|
|
|
|
|
|
|
|
|
|
|
let period1 = this.translateInterval2Period1(); |
|
|
|
// 转化接口所需的period |
|
|
|
let period = this.translateInterval2Period(); |
|
|
|
if(this.intertime!==this.model.interval){ |
|
|
|
this.model.subscribe([ |
|
|
|
{ |
|
|
|
cmd: "unsub", |
|
|
|
msg: `Kline_${this.symbol}_${period1}` |
|
|
|
}, |
|
|
|
{ |
|
|
|
cmd: "sub", |
|
|
|
msg: `Kline_${this.symbol}_${period}` |
|
|
|
} |
|
|
|
]); |
|
|
|
|
|
|
|
// 已有图表库 通过修改symbol触发图标库更新 重新执行getSymbol和getBar |
|
|
|
this.model.setSymbol(this.symbol); |
|
|
|
} |
|
|
|
|
|
|
|
Option.getKline({ |
|
|
|
symbol: this.symbol, |
|
|
|
@ -308,10 +358,11 @@ export default { |
|
|
|
// 初始化图表 |
|
|
|
initTV() { |
|
|
|
// 先订阅数据 再创建图表库 |
|
|
|
let period = this.translateInterval2Period(); |
|
|
|
this.model.subscribe([ |
|
|
|
{ |
|
|
|
cmd: "sub", |
|
|
|
msg: `Kline_${this.symbol}_1day` |
|
|
|
msg: `Kline_${this.symbol}_${period}` |
|
|
|
} |
|
|
|
]); |
|
|
|
// console.log(this.lang) |
|
|
|
@ -348,15 +399,16 @@ export default { |
|
|
|
// 初始化订阅数据并渲染图表库 |
|
|
|
this.initTV(); |
|
|
|
} else { |
|
|
|
let period = this.translateInterval2Period(); |
|
|
|
// 切换交易对 取消旧数据 订阅新数据 |
|
|
|
this.model.subscribe([ |
|
|
|
{ |
|
|
|
cmd: "unsub", |
|
|
|
msg: `Kline_${oldVal}_${this.interval}min` |
|
|
|
msg: `Kline_${oldVal}_${period}` |
|
|
|
}, |
|
|
|
{ |
|
|
|
cmd: "sub", |
|
|
|
msg: `Kline_${newVal}_${this.interval}min` |
|
|
|
msg: `Kline_${newVal}_${period}` |
|
|
|
} |
|
|
|
]); |
|
|
|
|
|
|
|
@ -371,10 +423,11 @@ export default { |
|
|
|
// console.info(msg) |
|
|
|
// this.model = new Model(msg, this); |
|
|
|
this.model.conglian(msg) |
|
|
|
let period = this.translateInterval2Period(); |
|
|
|
this.model.subscribe([ |
|
|
|
{ |
|
|
|
cmd: "sub", |
|
|
|
msg: `Kline_${this.symbol}_${this.interval}min` |
|
|
|
msg: `Kline_${this.symbol}_${period}` |
|
|
|
} |
|
|
|
]); |
|
|
|
|
|
|
|
|