在elementui中el-tabs切换echarts宽高不自适应的问题

切换时候会新增一个display:none 然后就成一坨了

 

解决办法:

等每次触发的时候渲染就可以了

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
el-timeline 和 echart 的 map 可以通过以下步骤进行结合: 1. 在 el-timeline 设置需要展示的时间轴数据。 2. 在时间轴上选择某个时间点,获取该时间点的数据。 3. 将该时间点的数据传递给 echart 的地图组件。 4. 在地图组件根据传递的数据进行渲染。 具体实现可以参考以下代码示例: ```html <template> <div> <el-timeline v-model="timelineData"> <el-timeline-item v-for="(item, index) in timelineData" :key="index" :timestamp="item.time" > {{ item.title }} </el-timeline-item> </el-timeline> <div ref="mapContainer" style="width: 100%; height: 500px;"></div> </div> </template> <script> import echarts from 'echarts' export default { data() { return { timelineData: [ { time: '2021-01-01', title: '2021年' }, { time: '2021-02-01', title: '2021年2月' }, { time: '2021-03-01', title: '2021年3月' } ] } }, mounted() { this.renderMap() }, methods: { renderMap() { const chart = echarts.init(this.$refs.mapContainer) const option = { // echart 的地图配置项 series: [ { type: 'map', map: 'china' } ] } chart.setOption(option) // 监听 el-timeline 的时间轴切换事件 this.$watch('timelineData', (newVal) => { const data = this.getDataByTime(newVal) this.updateMapData(chart, data) }) }, getDataByTime(data) { // 根据当前时间轴选的时间点获取对应数据 // 返回数据格式如下: // [ // { name: '北京', value: 100 }, // { name: '上海', value: 200 } // ] // name 表示地区名称,value 表示该地区的数据值 // 数据值可以根据实际需求进行设置 return [] }, updateMapData(chart, data) { // 更新地图数据 const option = chart.getOption() option.series[0].data = data chart.setOption(option) } } } </script> ``` 在上面的代码el-timeline 展示了时间轴数据,当用户切换时间轴时,会调用 `getDataByTime` 方法获取对应的数据,然后调用 `updateMapData` 方法更新地图数据。其,`getDataByTime` 方法需要根据当前时间点获取对应的数据,并返回一个数组,数组每个对象表示一个地区的数据信息。`updateMapData` 方法则是将获取到的数据更新到 echart 的地图组件。需要注意的是,echart 需要在 `mounted` 钩子函数进行初始化,否则无法正常渲染。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值