Vue ECharts实现机舱座位选择展示功能


Posted in Vue.js onMay 15, 2022

Vue ECharts实现机舱座位选择展示功能

var ROOT_PATH =
  'https://cdn.jsdelivr.net/gh/apache/echarts-website@asf-site/examples';
var chartDom = document.getElementById('main');
var myChart = echarts.init(chartDom);
var option;
$.get(ROOT_PATH + '/data/asset/geo/flight-seats.svg', function (svg) {
  echarts.registerMap('flight-seats', { svg: svg });
  const takenSeatNames = ['26E', '26D', '26C', '25D', '23C', '21A', '20F'];
  option = {
    tooltip: {},
    geo: {
      map: 'flight-seats',
      roam: true,
      selectedMode: 'multiple',
      layoutCenter: ['50%', '50%'],
      layoutSize: '95%',
      tooltip: {
        show: true
      },
      itemStyle: {
        color: '#fff'
      },
      emphasis: {
        itemStyle: {
          color: undefined,
          borderColor: 'green',
          borderWidth: 2
        },
        label: {
          show: false
        }
      },
      select: {
        itemStyle: {
          color: 'green'
        },
        label: {
          show: false,
          textBorderColor: '#fff',
          textBorderWidth: 2
        }
      },
      regions: makeTakenRegions(takenSeatNames)
    }
  };
  function makeTakenRegions(takenSeatNames) {
    var regions = [];
    for (var i = 0; i < takenSeatNames.length; i++) {
      regions.push({
        name: takenSeatNames[i],
        silent: true,
        itemStyle: {
          color: '#bf0e08'
        },
        emphasis: {
          itemStyle: {
            borderColor: '#aaa',
            borderWidth: 1
          }
        },
        select: {
          itemStyle: {
            color: '#bf0e08'
          }
        }
      });
    }
    return regions;
  }
  myChart.setOption(option);
  // Get selected seats.
  myChart.on('geoselectchanged', function (params) {
    const selectedNames = params.allSelected[0].name.slice();
    // Remove taken seats.
    for (var i = selectedNames.length - 1; i >= 0; i--) {
      if (takenSeatNames.indexOf(selectedNames[i]) >= 0) {
        selectedNames.splice(i, 1);
      }
    }
    console.log('selected', selectedNames);
  });
});
option && myChart.setOption(option);

到此这篇关于Vue ECharts实现机舱座位选择展示的文章就介绍到这了!


Tags in this post...

Vue.js 相关文章推荐
vue 在服务器端直接修改请求的接口地址
Dec 19 Vue.js
vue实现登录、注册、退出、跳转等功能
Dec 23 Vue.js
vue 使用rules对表单字段进行校验的步骤
Dec 25 Vue.js
vue实现简易计算器功能
Jan 20 Vue.js
vue中axios封装使用的完整教程
Mar 03 Vue.js
vue 数据双向绑定的实现方法
Mar 04 Vue.js
Vue实现下拉加载更多
May 09 Vue.js
Vue Element UI自定义描述列表组件
May 18 Vue.js
详解vue身份认证管理和租户管理
May 25 Vue.js
vue项目中的支付功能实现(微信支付和支付宝支付)
Feb 18 Vue.js
Vue+TypeScript中处理computed方式
Apr 02 Vue.js
vue实现省市区联动 element-china-area-data插件
Apr 22 Vue.js
Vue组件化(ref,props, mixin,.插件)详解
vue postcss-px2rem 自适应布局
May 15 #Vue.js
VUE解决跨域问题Access to XMLHttpRequest at
vue使用watch监听属性变化
Apr 30 #Vue.js
vue-cli3.x配置全局的scss的时候报错问题及解决
vue项目如何打包之项目打包优化(让打包的js文件变小)
关于vue-router-link选择样式设置
Apr 30 #Vue.js
You might like
文件上传程序的全部源码
2006/10/09 PHP
php获取某个目录大小的代码
2008/09/10 PHP
PHP 中关于ord($str)&amp;gt;0x80的详细说明
2012/09/23 PHP
php gzip压缩输出的实现方法
2013/04/27 PHP
解析crontab php自动运行的方法
2013/06/24 PHP
PHP动态生成javascript文件的2个例子
2014/04/11 PHP
PHP+jQuery翻板抽奖功能实现
2015/10/19 PHP
详解PHP 7.4 中数组延展操作符语法知识点
2019/07/19 PHP
新页面打开实际尺寸的图片
2006/08/25 Javascript
jQuery学习3:操作元素属性和特性
2010/02/07 Javascript
用js来刷新当前页面保留参数的具体实现
2013/12/23 Javascript
js与jquery获取父级元素,子级元素,兄弟元素的实现方法
2014/01/09 Javascript
jquery常用特效方法使用示例
2014/04/25 Javascript
修复bash漏洞的shell脚本分享
2014/12/31 Javascript
原生JS实现LOADING效果
2015/03/16 Javascript
微信小程序 条件渲染详解
2016/10/09 Javascript
利用Angular+Angular-Ui实现分页(代码加简单)
2017/03/10 Javascript
node.js程序作为服务并在windows下开机自启动(用forever)
2017/03/29 Javascript
微信小程序 实例开发总结
2017/04/26 Javascript
Node.js npm命令运行node.js脚本的方法
2018/10/10 Javascript
详解webpack4之splitchunksPlugin代码包分拆
2018/12/04 Javascript
从零学Python之入门(五)缩进和选择
2014/05/27 Python
Python常见数据结构详解
2014/07/24 Python
python3 面向对象__类的内置属性与方法的实例代码
2018/11/09 Python
Python操作MySQL数据库实例详解【安装、连接、增删改查等】
2020/01/17 Python
pyinstaller打包单文件时--uac-admin选项不起作用怎么办
2020/04/15 Python
解决pip安装的第三方包在PyCharm无法导入的问题
2020/10/15 Python
python中pow函数用法及功能说明
2020/12/04 Python
用CSS3的box-reflect来制作倒影效果
2016/11/15 HTML / CSS
美国在线轮胎零售商:SimpleTire
2019/04/08 全球购物
群胜软件Java笔试题
2012/09/29 面试题
小学生三分钟演讲稿
2014/08/18 职场文书
服务行业演讲稿
2014/09/02 职场文书
国家税务局干部作风整顿整改措施
2014/09/18 职场文书
升职感谢信
2015/01/22 职场文书
2015年销售助理工作总结
2015/05/11 职场文书