vue 动态加载 echarts不同的地图

今天做项目有那么一个需求,就是使用echarts画地图,要根据账号的信息来展示不同省份的地图,(这里画单个地图我就不多说了);

问题:按照引入单个地图文件去画地图也是可以的,但是打包后的体积比较大,页面加载很慢。所以只能寻求其他方法
在这里插入图片描述

1.究其原因页面加载慢,主要是地图文件载入比较慢,实际用到的地图可能就2.3个,所以,这边单独在服务器上放了个echarts的插件包(需要后端配置下能访问到)在这里插入图片描述
2.能在浏览器直接打开
在这里插入图片描述
3.如果没有处理跨域的,可以在node中配置下代理服务器
在这里插入图片描述

4.根据返回值str=“apis/china.json”

axios.get(str)
                .then(response=> {
                       
                       
                        **echarts.registerMap(this.city,response.data)**	//这里 导入地图
                      
                        
                        let myChart = echarts.init(document.getElementById('screenMapBox'));
                        myChart.setOption(this.option);
                        window.addEventListener("resize", myChart.resize);
                        // 监控缩放
                        myChart.on('georoam',function(params){
                            that.zoom=myChart.getOption().series[0].zoom;
                        })
                    })
                    .catch(function (error) {
                        console.log(error);
                    });

5.效果
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值