vue3使用echarts5

<template>
    <div id="echarts168" :style="{width: nwidth+'%', height: nheight+'px'}"></div>
</template>
<script lang="ts">
import * as echarts from 'echarts'
import {onMounted, defineComponent, nextTick } from 'vue'
const props = {
    ewidth: {
        type: Number ,
        default: 100
    },
    eheight: {
        type: Number,
        default: 440
    }
}
    export default defineComponent({
        props,
        
        setup (props:any, context) {
            console.log(context)
            let {ewidth: nwidth, eheight: nheight} = props
            const initCharts = () => {
                console.log('init charts')
                const option = {
                    xAxis: {
                        type: 'category',
                        data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
                    },
                    yAxis: {
                        type: 'value'
                    },
                    series: [
                        {
                        data: [150, 230, 224, 218, 135, 147, 260],
                        type: 'line'
                        }
                    ]
                };

                const myChart = echarts.init(document.getElementById('echarts168') as HTMLDivElement);
                myChart.setOption(option)
            
                window.onresize = () => {
                    myChart.resize()
                };

            }
            onMounted(() => {
                initCharts()
            })
            
            // 向外暴露初始化方法
            context.expose({
                initCharts
            })

            return {
                nwidth,
                nheight
            }
        }

    })  
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值