<template>
<el-card class="img-card-item">
<div slot="header" class="clearfix">
<span>案例</span>
</div>
<div ref="barChart" style="height: 300px"></div>
</el-card>
</template>
<script>
import echarts from 'echarts'
export default {
props: {
barData: {
type: Object,
default: () => {
return {}
},
},
},
data() {
return {}
},
computed: {
chartsData() {
return this.barData
},
},
watch: {
barData: {
handler() {
this.setOptions()
},
deep: true,
},
},
mounted() {
this.initCharts()
},
beforeDestroy: function() {
window.removeEventListener('resize', this.barChart.resize)
},
methods: {
handleDay() {},
handleChange() {},
initCharts() {
this.barChart = echarts.init(this.$refs.barChart)
this.setOptions()
window.addEventListener('resize', this.barChart.resize)
},
setOptions() {
//let that = this
this.barChart.setOption({
backgroundColor: '#FFF',
grid: {
top: '10%',
bottom: '10%',
left: '10%',
right: '4%',
},
tooltip: {
trigger: 'item',
label: {
show: true,
},
},
xAxis: {
boundaryGap: true, //默认,坐标轴留白策略
axisLine: {
show: false,
},
splitLine: {
show: false,
},
axisTick: {
show: false,
alignWithLabel: true,
},
data: this.chartsData.dataName,
},
yAxis: {
axisLine: {
show: false,
},
splitLine: {
show: true,
lineStyle: {
type: 'dashed',
color: 'rgba(33,148,246,0.2)',
},
},
axisTick: {
show: false,
},
},
series: [
{
type: 'bar',
itemStyle: {
color: 'rgb(33,148,246)',
borderWidth: 1,
borderColor: '#FFF',
barBorderRadius: [8, 8, 0, 0],
},
barWidth: 25,
label: {
show: false,
distance: 1,
},
data: this.chartsData.dataList,
},
],
})
},
},
}
</script>
<style lang="scss" scoped>
.img-card-item {
::v-deep .el-card__body {
padding: 10px;
}
.header-r {
float: right;
}
}
</style>
vue echarts 随窗口变化
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- //监听window的onresize事件,当窗口大小发生改变,那么就resize图表 window.onresi...
- 1 在vue中使用echarts 先安装 echarts 此处用的yarn 工具 安装完毕之后 可以在packag...
- 在vue项目中使用Echarts 一般window.onsize在页面中只能存在一个。如何在一个页面中多个ech...
- 数据可视化的时候用到echarts,要想生成图表能够根据大小自适应,就要用到echarts自己的resize方法。...
- 实现这个效果之前我们先来看一个onresize事件 onresize 事件会在窗口或框架被调整大小时发生。 拓展下...