vue使用echarts动态请求数据,vue echarts 动态数据
这篇文章主要为大家详细介绍了vue . j高图表实现动态请求展示时序数据,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了vue . j高图表实现动态请求展示时序数据的具体代码,供大家参考,具体内容如下
模板
埃尔容器
埃尔-标题
El-menu:default-active= activeIndex class= El-menu-header mode= horizontal @ select= handle select
El-menu-item index= 1 router-link:to= { path:/yun/index } 首页/路由器-链接/El-菜单项
El-menu-item index= 2 router-link:to= { path:/yun/list } 服务器列表/路由器-链接/El-菜单项
埃尔菜单项索引=3 控制台/El-菜单项
埃尔菜单项索引=4 消息中心/El-菜单项
El-menu-item index= 5 router-link:to= { path:/yun/about } 关于我们/路由器-链接/El-菜单项
El-menu-item @ click= tolog in() v-if= userName=== 登录/El-菜单项
埃尔-菜单项
埃尔-下拉菜单
span class= El-drop down-link v-if=用户名!==
{ { userName } } I class= El-icon-arrow-down El-icon-right /I
/span
El-下拉菜单slot= drop down v-if=用户名!==
!极小的下拉列表项登录/El-下拉列表-项目-
El-下拉-项目@点击。native= Togo out 退出/El-下拉列表项
/El-下拉菜单
/El-下拉菜单
/El-菜单项
/el-menu
/el-header
El-container style= height:620 px;边框:1px纯色#eee
左侧宽度= 200像素
埃尔菜单
默认活动=1
El-菜单-垂直-演示
@open=handleOpen
@close=handleClose
埃尔-子菜单索引=1
模板槽=标题
i class=el-icon-location/i
跨度服务器列表/span
/模板
埃尔-菜单-项目-组
模板槽=标题分组一/模板
埃尔菜单项索引=1-1 选项1/el菜单项
埃尔菜单项索引=1-2 选项2/el菜单项
/El-菜单项-组
埃尔-菜单-项目-组标题=分组2
埃尔菜单项索引=1-3 选项3/el菜单项
/El-菜单项-组
埃尔-子菜单索引=1-4
模板槽=标题选项4/模板
埃尔菜单项索引=1-4-1 选项1/el菜单项
/El-子菜单
/El-子菜单
埃尔菜单项索引=2
i class=el-icon-menu/i
span slot=title 导航二/span
/El-菜单项
埃尔菜单项索引=3 已禁用
i class=el-icon-document/i
span slot=title 导航三/span
/El-菜单项
埃尔菜单项索引=4
i class=el-icon-setting/i
span slot=title 导航四/span
/El-菜单项
/el-menu
/El-旁白
埃尔容器
埃尔梅因
div class=x条
div:id= id :option= option /div
/div
/el-main
!-电子页脚
!-/埃尔-页脚-
/El-容器
/El-容器
/El-容器
/模板
脚本
从" vuex "导入{地图突变};
从vuex //导入状态管理引入状态管理
导入商店自./商店
从"高图表"导入高图表
导出默认值{
名称: YunMonitorServerv ,
data() {
返回{
用户名: ,
活跃指数:“1”,
arr: [],
图表数据:[],
用户名:这个. route.query.data,
idForm: {
id:“1”
},
id: testtt ,
选项:{
图表:{
缩放类型:“x”
},
标题:{
文本: cpu.0.percent.active//表头文字
},
副标题:{
text: document.ontouchstart===未定义?
鼠标拖动可以进行缩放 : 手势操作进行缩放
},
xAxis: {
类型:"日期时间",
dateTimeLabelFormats: {
毫秒:" %H:%M:%S.%L ",
第二个:" %H:%M:%S ",
分钟:" %H:%M ",
小时:" %H:%M ",
日期:" %m-%d ",
周:" %m-%d ",
月份:" %Y-%m ",
年份:" %Y "
}
},
工具提示:{
dateTimeLabelFormats: {
毫秒:" %H:%M:%S.%L ",
第二个:" %H:%M:%S ",
分钟:" %H:%M ",
小时:" %H:%M ",
日期:" %Y-%m-%d ",
周:" %m-%d ",
月份:" %Y-%m ",
年份:" %Y "
}
},
亚西斯:{
标题:{
文本: 使用率
}
},
图例:{
启用:假
},
绘图选项:{
区域:{
fillColor: {
线性梯度:{
x1: 0,
y1: 0,
x2: 0,
y2: 1
},
停靠点:[
[0,HighCharts.getOptions().颜色[0]],
[1,高图表Color(HighCharts.getOptions().颜色[0])。设置容量(0).get(rgba)]
]
},
标记:{
半径:2
},
线宽:1,
国家:{
悬停:{
线宽:1
}
},
阈值:空
}
},
系列:[{
类型:"面积",
名称: 使用率,
数据:[
]
}]
}
}
},
已创建(){
},
已安装(){
这个。显示图表();
},
方法:{
.mapMutations([changeLogin]),
toLogout() {
本地存储。删除项目(“授权”);
本地存储。删除项目(“用户名”).
这个10.99 $ router . push(
{
路径:/yun/login ,
}
)
},
toLogin() {
这个10.99 $ router . push(
{
路径:/yun/login ,
}
)
},
showCharts() {
this.flag=true
这个. http。get( http://localhost:8088/monitor/query/Li data-DL/CPU。0 .百分比。活动/1600672572/1600672629 ,{
_timeout:5000,
超时:(请求)={
这个message.error(请求超时);
this.loading=false
}
}).然后((响应)={
var RES=JSON。解析(响应。正文);
this.loading=false
这个。记录=研究记录;
var arr=res .记录
for(var I=0;长度;i ){
这个。图表数据。push(arr[I]);
}
var oSeries={
类型:"面积",
名称: 功率,
数据:this.chartData
};
HighCharts.chart(this.id,this.option).添加系列(oSeries);
})
},
toVmDetail(url){
window.open(url)
},
handleSelect(key,keyPath) {
console.log(key,key path);
},
handleOpen(key,keyPath) {
console.log(key,key path);
},
handleClose(key,keyPath) {
console.log(key,key path);
},
}
}
/脚本
原本要求的数据格式是二维数组
系列:[{
类型:"面积",
名称:区域,
数据:[
[1370131200000, 0.7695],
[1370217600000, 0.7648]
]
}]
然后得到请求的数据返回的时候直接返回二维数组就行了
需要注意的就是二维数组的更新方式
有的时候,当我们手动对数据中的数据修改时,vue却监听不到这些数据的变化,导致页面没有触发新一轮的更新。
注意:出现以上问题的原因在于,没有通过某视频剪辑软件提供的方法对保存在数据中的数据进行修改。强制性通过射流研究…对数据修改的那些方法,有一部分在某视频剪辑软件中是不被认可的。
对于数组的更新,一种可以使用
流行音乐删除末项推添加一项变化删除第一项松开打字机或键盘的字型变换键添加第一项接合截取/修改/删除数组元素分类对数组排序反面的取反另一种则可以通过set方法()
这一套这是某视频剪辑软件实例调用设置这是某视频剪辑软件实例调用设置这是某视频剪辑软件实例调用集合()方法,专门用来修改数组的
第一个参数,已经存在数据中的数据,要被修改的数组
第二个参数,要修改的数组下标
第三个参数,要修改的数组对应下标的值
这个. set (this.selectedarr,index,option)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。