DataV 你值得拥有的大屏展示工具

DataV

  • Vue 大屏数据展示组件库(项目地址: http://datav.jiaminghi.com/),具有以下几个特性:
    • 开源免费
      长期维护,不断添加新组件以丰富组件库
    • 开箱即用
      大部分组件设置宽高或配置简单的数据即可使用
    • 视觉绚丽
      通过组合不同的配置项可以达到多变的视觉效果

效果图

  • 先来几张作者的效果图,感受下DataV的魅力,之前我也试用过阿里云的Datav,觉得还不错,就是对于我们这种学习的爱好者,实在承担不起费用,除非有老板或者项目赞助还能玩一玩。

在这里插入图片描述

在这里插入图片描述

怎么玩

  • 技术知识储备:
    • Javascript
    • Html + Div + Css
    • Vue或者React
    • 后端接口技术开发
  • 大概有以上的知识储备就可以愉快地玩耍了,不要求精通,但是需要了解,不懂就百度,谷歌,菜鸟教程,总能找到相应的解决方法,再不行就留言我呗,我们一起百度谷歌。

尝鲜篇

  • 在DataV项目里面,有很多看起来很洋气的装饰框,用得好,绝对会让你的大屏看起来更加具有科技感,这些使用时最简单的,只需要一个div和一个vue实例即可。
    • 首先引入vue和datav的js包
<script src="https://unpkg.com/vue"></script>
<script src="https://unpkg.com/@jiaminghi/data-view/dist/datav.map.vue.js"></script>
  • 建立一个div并赋值一个编号
<div id="demo">
</div>
  • 加入一个davav标签
<dv-decoration-9 style="width:150px;height:150px;">66%<\/dv-decoration-9>
  • 声明一个vue实例
<script>
 var app = new Vue({
   el: '#demo'
  })
</script>
  • 完整代码以及效果如下:
<!DOCTYPE html>
<html>
<head>
  <title>DataV</title>
  <script src="https://unpkg.com/vue"></script>
  <!--调试版-->
  <script src="https://unpkg.com/@jiaminghi/data-view/dist/datav.map.vue.js"></script>
 </head>
<body>
  <div id="demo">
    <dv-decoration-9 style="width:150px;height:150px;">66%</dv-decoration-9>
  </div>
  <script>
    var app = new Vue({
      el: '#demo'
    })
  </script>
</body>
</html>

在这里插入图片描述

进阶篇

  • 通过第一阶段的尝鲜篇后,我相信你已经感受到了datav的简单易用之处了,接下来,我们来使用davav上面提供的其他组件,来为我们的数字提供翅膀,让我们的领导和客户甲方满意。
  • 这里呢,我用的davav的一个水位图做示例,其他的组件使用基本大同小异,datav提供的水位图传送门:http://datav.jiaminghi.com/guide/waterLevelPond.html,从官方提供的样例来看,效果还是比较不错的。
实现步骤
  • 首先跟尝鲜篇一样操作,不同的是,这里的datav多了一个变量:config,这个是这个组件的配置数据,需要通过vue实例进行填充。
  • 新建一个vue,并且定义config属性
  <script>
    var app = new Vue({
      el: '#demo',
      data: {
        "config": {
           "data": [66, 45],
           "shape": "roundRect"
          
         }
      }
    })
  </script>
  • 完整代码和效果如下:
<!DOCTYPE html>
<html>
<head>
  <title>DataV</title>
  <script src="https://unpkg.com/vue"></script>
  <!--调试版-->
  <script src="https://unpkg.com/@jiaminghi/data-view/dist/datav.map.vue.js"></script>
 </head>
<body>
  <div id="demo">
    <dv-water-level-pond :config="config" style="width:150px;height:200px" />
  </div>
  <script>
    var app = new Vue({
      el: '#demo',
      data: {
        "config": {
           "data": [66, 45],
           "shape": "roundRect"
         }
      }
    })
  </script>
</body>
</html> 

在这里插入图片描述

数据填充篇

  • 通过以上的两篇内容,发挥你的才智和想象布局能力,我相信你可以设计出一个非常优秀好看,并且科技满满的大屏了。
  • 但是,到目前为止,我们的数据都是通过页面进行写死的,无法实时地获取并且刷新,这样的大屏数据反应不及时,仅适用于长期的静态数据或者宣传大屏。
  • 接下来,我将教你如何利用vue+axios异步地去请求数据,并加载。
实现步骤
  • 首先,引入axios,这是vue2.0推荐的异步请求数据的技术
<script src="https://cdn.staticfile.org/axios/0.18.0/axios.min.js"></script>
  • 利用进阶篇的果实,对vue的实例进行修改,修改如下:
 <script>
    var app = new Vue({
      el: '#demo',
      data: {
        "config": {

           "data": [85, 15],
           "shape": "roundRect"

         }
      },
      methods :{
        getdata: function(){
          axios
                  .get('/static/demo.json')
                  .then(response => (this.config = response.data))
                  .catch(function (error) { // 请求失败处理
                    console.log(error);
                  });
        }

      },
      mounted() {
        //this.timer = setInterval(()=>{this.getdata();},1000);
        this.getdata();
      }
    })
  </script>
  • 说明一下,这里再vue实例中,增加了一个method,名称为getdata,这个方法使用了axios,异步地去请求了数据,并且赋值给了config属性,异步获取的json文件内容如下
   {
  "data": [88, 55],
  "shape": "roundRect"
  }
  • 获取到的内容,会填充到vue对象中的config属性,从而完成数据的更新
  • 有了方法后,就要有动作去触发它,这里利用了vue对象的mounted生命周期,在这个生命周期中调用这个方法,完成数据的更新操作。另外如果需要定时更新,可以添加一个timer进行实现,具体可见注释的代码。
  • 完整的代码和效果如下
<!DOCTYPE html>
<html>
<head>
  <title>DataV</title>
  <script src="https://unpkg.com/vue"></script>
  <!--调试版-->
  <script src="https://unpkg.com/@jiaminghi/data-view/dist/datav.map.vue.js"></script>
  <script src="https://cdn.staticfile.org/axios/0.18.0/axios.min.js"></script>
 </head>
<body>
  <div id="demo">
    <dv-water-level-pond :config="config" style="width:150px;height:200px" />
  </div>
  <script>
    var app = new Vue({
      el: '#demo',
      data: {
        "config": {

           "data": [85, 15],
           "shape": "roundRect"

         }
      },
      methods :{
        getdata: function(){
          axios
                  .get('/static/demo.json')
                  .then(response => (this.config = response.data))
                  .catch(function (error) { // 请求失败处理
                    console.log(error);
                  });
        }

      },
      mounted() {
        //this.timer = setInterval(()=>{this.getdata();},1000);
        this.getdata();
      }
    })
  </script>
</body>
</html>

更新后

  • PS:这个涉及到数据请求,存在CORS安全问题,需要把这两个文件一起放到静态服务器上面才能看到效果。

总结

  • 这个datav可以满足日常的大屏组件的需求,使用起来也相对比较简单,不需要什么高深的前端知识就能快速完成组件的开发,并且效果还是比较不错,推荐大家使用。
  • 12
    点赞
  • 139
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
View data 大屏是一种数据可视化的仪表板,它用于展示和分析大量的数据。这种大屏通常由一个或多个显示屏组成,可以展示各种形式的数据,如表格、图表、地图等。 View data 大屏的目的是为了能够更直观地理解和分析数据。通过将数据可视化,我们可以更清晰地看到数据之间的关联和趋势,从而帮助我们做出更准确的决策和战略规划。 View data 大屏通常用于企业管理、市场分析、金融监控等领域。在企业管理中,它可以帮助管理团队实时监控业务指标,并随时调整策略以适应市场变化。在市场分析中,它可以显示不同地区的销售情况和竞争对手的市场份额,帮助企业了解市场状况并制定切实可行的营销策略。在金融监控中,它可以展示股票行情、投资组合的价值变动等信息,帮助投资者和交易员做出明智的投资决策。 View data 大屏的优点是信息直观、易于理解。通过将数据可视化,复杂的数据可以以直观的方式展示出来,不需要深入研究就能快速理解。此外,View data 大屏还可以实现实时更新数据,使用户随时掌握最新的信息。 总之,View data 大屏是一种强大的数据可视化工具,它能够帮助我们更好地理解和分析大量的数据。无论是在企业管理、市场分析还是金融监控方面,View data 大屏都可以发挥重要的作用,帮助我们做出更明智的决策。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值