vue2+datav可视化数据大屏(2)

简介: 接上一节所说 我们已经讲骨架搭好 这节我们讲述的如何在vue2中使用mock数据和封装axios

接上一节所说 我们已经讲骨架搭好 这节我们讲述的如何在vue2中使用mock数据和封装axios

1,项目中使用moke

       ?什么是mock?,mock就是假数据,除了数据是假的,其他内容都和正常工作中后端开发的接口都是一致的。我们现在就根据实际的情况,定义9个接口给大屏使用

      ? 在src文件夹下新建文件夹mock,在mock文件夹下新建文件index.js,在index文件里写mock接口image.gif编辑

       ? 来建第一个接口

import Mock from "mockjs";  //导入mock
Mock.setup({  //设置延迟时间,最大程度的接近正式接口
    timeout: 4000
    })
Mock.mock("/api/info", "get", {  //第一个参数是地址,第二个参数是该接口的请求方式,第三个参数是返回值
  code: 200,
  data: {
    Tue: 123,
    Wed: 231,
    Thu: 2142,
    Fri: 432,
    Sat: 9271,
    Sun: 8987,
  },
});

image.gif

     ?以此类推 我们创建9个接口

import Mock from "mockjs";
Mock.setup({
    timeout: 4000
    })
Mock.mock("/api/info", "get", {  //折线图接口
  code: 200,
  data: {
    Tue: 123,
    Wed: 231,
    Thu: 2142,
    Fri: 432,
    Sat: 9271,
    Sun: 8987,
  },
});
Mock.mock("/api/info1", "get", { //饼图接口
    code: 200,
   data: [
        { value: 1048, name: 'Search Engine' },
        { value: 735, name: 'Direct' },
        { value: 580, name: 'Email' },
        { value: 484, name: 'Union Ads' },
        { value: 300, name: 'Video Ads' }
      ],
  });
Mock.mock("/api/info2", "get", {  //环形图接口
    code: 200,
    data: [
        { value: 1048, name: 'Search Engine' },
        { value: 735, name: 'Direct' },
        { value: 580, name: 'Email' },
        { value: 484, name: 'Union Ads' },
        { value: 300, name: 'Video Ads' }
      ],
  });
  Mock.mock("/api/info3", "get", { //柱状图接口
    code: 200,
    data: {
      Tue: 123,
      Wed: 231,
      Thu: 2142,
      Fri: 432,
      Sat: 9271,
      Sun: 8987,
    },
  });
  Mock.mock("/api/info4", "get", {
    code: 200,
    data: {
      Tue: 123,
      Wed: 231,
      Thu: 2142,
      Fri: 432,
      Sat: 9271,
      Sun: 8987,
    },
  });
  Mock.mock("/api/info5", "get", {
    code: 200,
    data: {
      Tue: 123,
      Wed: 231,
      Thu: 2142,
      Fri: 432,
      Sat: 9271,
      Sun: 8987,
    },
  });
  Mock.mock("/api/info6", "get", {
    code: 200,
    data: {
      Tue: 123,
      Wed: 231,
      Thu: 2142,
      Fri: 432,
      Sat: 9271,
      Sun: 8987,
    },
  });
  Mock.mock("/api/info7", "get", {
    code: 200,
    data: {
      Tue: 123,
      Wed: 231,
      Thu: 2142,
      Fri: 432,
      Sat: 9271,
      Sun: 8987,
    },
  });
  Mock.mock("/api/info8", "get", {
    code: 200,
    data: {
      Tue: 123,
      Wed: 231,
      Thu: 2142,
      Fri: 432,
      Sat: 9271,
      Sun: 8987,
    },
  });

image.gif

        ?在main.js里导入我们创建在mock下的index文件

image.gif编辑

       ?这时候,我们就已经新建了9个接口,下一步就是封装axios了

2.封装axios

         ?axios刚初始化时肯定是不好使用的,所以我们得需要进行2次封装

       ?在src文件夹下面新建一个文件夹utlis文件,文件夹下面新建文件requests.js用来二次封装axios

image.gif编辑

       ? 在文件里倒入axios,并使用axios的create方法创建axios实例,并导出

import axios from "axios"
const requests = axios.create({
    baseURL:"" //这里放接口请求域名
}) 
//写请求拦截器或者想要拦截器
requests.interceptors.request.use(config=>{ //我这里写请拦截器 给每个请求加上请求头
    config.headers.Authorization = 'Bearer ' + "123123"
    return config
})
requests.interceptors.response.use(config=>{ //这里我写了一个响应拦截器,这里对所有接口返回值是code的在控制台上打印响应成功
    if(config.data.code == 200){
        console.log("响应成功")
    }
    return config
})
export default requests  //将我们二次封装处理好的axios默认导出

image.gif

3.统一处理接口

      ?当我们axios封装好了,mock数据也有了后,这时,我们就需要做一件事情了,要对请求接口进行加工,便于我们更好的进行管理

       ?在src-views里新建文件夹api,api文件夹下新建文件index.js

image.gif编辑

       ?在index,js文件里面导入我们二次封装后的axios,并在里面设置请求的方式,和需要请求的接口,并进行导出

import requests from "@/utlis/requests";
// 折线图接口
export function info(){
    return requests({
        url:"/api/info",
        method:"GET"
    })
}
// 饼图接口
export function info1(){
    return requests({
        url:"/api/info1",
        method:"GET"
    })
}
// //环形图接口
export function info2(){
    return requests({
        url:"/api/info2",
        method:"GET"
    })
}
// //柱状图接口
export function info3(){
    return requests({
        url:"/api/info3",
        method:"GET"
    })
}
// 折线图接口
export function info4(){
    return requests({
        url:"/api/info4",
        method:"GET"
    })
}
// 折线图接口
export function info5(){
    return requests({
        url:"/api/info5",
        method:"GET"
    })
}
// 折线图接口
export function info6(){
    return requests({
        url:"/api/info6",
        method:"GET"
    })
}
// 折线图接口
export function info7(){
    return requests({
        url:"/api/info7",
        method:"GET"
    })
}
// 折线图接口
export function info8(){
    return requests({
        url:"/api/info8",
        method:"GET"
    })
}

image.gif

现阶段当进行了接口的二次封装后,后续我们直接调用函数方法,就能进行接口请求了,下一节将进行页面的填充和echarts的渲染

相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
阿里云实时数仓实战 - 项目介绍及架构设计
课程简介 1)学习搭建一个数据仓库的过程,理解数据在整个数仓架构的从采集、存储、计算、输出、展示的整个业务流程。 2)整个数仓体系完全搭建在阿里云架构上,理解并学会运用各个服务组件,了解各个组件之间如何配合联动。 3 )前置知识要求   课程大纲 第一章 了解数据仓库概念 初步了解数据仓库是干什么的 第二章 按照企业开发的标准去搭建一个数据仓库 数据仓库的需求是什么 架构 怎么选型怎么购买服务器 第三章 数据生成模块 用户形成数据的一个准备 按照企业的标准,准备了十一张用户行为表 方便使用 第四章 采集模块的搭建 购买阿里云服务器 安装 JDK 安装 Flume 第五章 用户行为数据仓库 严格按照企业的标准开发 第六章 搭建业务数仓理论基础和对表的分类同步 第七章 业务数仓的搭建  业务行为数仓效果图  
相关文章
|
5天前
|
Prometheus 监控 Cloud Native
用 DataV 展示 Prometheus 数据
本文介绍了如何将 Prometheus 数据接入 DataV 进行可视化展示。如果使用的是阿里云可观测监控中的 Prometheus 实例,或者自建的 Prometheus 开放了公网可访问的 HTTP API,那么可直接通过 API 将数据接入 DataV 展示。
74 0
|
5天前
|
JSON 数据可视化 定位技术
python_将包含汉字的字典数据写入json(将datav的全省数据中的贵州区域数据取出来)
python_将包含汉字的字典数据写入json(将datav的全省数据中的贵州区域数据取出来)
19 0
|
5天前
|
数据可视化 JavaScript 开发工具
vue2+datav可视化数据大屏(3)
接上一节所说,当我们将接口封装完了后,我们需要给大屏进行内容填充啦
142 0
|
5天前
|
数据可视化 JavaScript 前端开发
vue2+datav可视化数据大屏(1)
最近打算出一个前端可视化数据大屏的系列专栏,这次将很全面的教大家设计可视化大屏,从开始到打包结束,其中,包括如何设计框架,如何封装axios,等等,本次使用的数据均为mock数据。与正常使用一致。本文会从开始的创建vu23项目到最后的项目打包,本篇共计3节。
306 1
|
5天前
|
数据可视化 前端开发 JavaScript
react+datav+echarts实现可视化数据大屏
最近有点闲,就学习了下react,没想到就把react学完了,觉得还不错,就打算出一把react+datav的简易版可视化数据大屏供大家做个参考
177 2
react+datav+echarts实现可视化数据大屏
|
9月前
|
数据可视化 容器
DataV构建大屏(全屏)数据展示页面
DataV构建大屏(全屏)数据展示页面
560 0
|
12月前
|
资源调度 数据可视化 JavaScript
vue3+DataV+Echarts搭建数据大屏模板(建议收藏)
vue3+DataV+Echarts搭建数据大屏模板(建议收藏)
852 0
vue3+DataV+Echarts搭建数据大屏模板(建议收藏)
|
SQL 数据可视化 数据库
使用阿里云dataV实现大屏自动轮播
使用阿里云dataV实现大屏自动轮播进行动态展示
1503 0
使用阿里云dataV实现大屏自动轮播
|
JSON 编解码 监控
使用dataV还原销售实时监控大屏
使用dataV还原销售实时监控大屏
407 0
使用dataV还原销售实时监控大屏
|
数据可视化
宜搭&DataV在一起啦!宜搭大屏可视化正式全量上线
● 2021年10月,随着宜搭 3.0 的正式发布,为了让钉钉上的每一个企业数字化的工作方式被看见,在云栖大会上,宜搭在酷数据方面,正式“牵手”DataV,发布了宜搭大屏的能力; ● 2021年12月,宜搭 & DataV在产品侧充分融合无缝衔接,现,正式面向宜搭全量付费用户开放,真正让宜搭用户一键掌握专业炫酷的数据可视化表现力!
3572 1
http://www.vxiaotou.com