更新: 2019/03 无意间发现Graphic上已有 LinearGradient属性 ????????????
效果如图: 是不是比较炫~
遇到的问题:@types/echart 到目前只到 v4.1.1,类型“Graphic”上没有 LinearGradient属性
tslint提示:color: new echarts.graphic中没有LinearGradient属性
, ,,, 不支持那渐变还怎么显示出来呢,无奈,只有搬出
“
// @ts-ignore
”让它跳过类型检查啦,真的希望echarts团队赶紧把这个属性定义一下,总感觉这么暴力的方式不优雅哈哈~
// 1. 引入模块 import ReactEcharts from 'echarts-for-react' import * as echarts from 'echarts'
// 2. 配置
get option() { const dataAxis = ['10,20', '10.21', '10.22' ] const chartsCost = [100, 200, 300 ] return { dataZoom: [ { type: 'inside' , }, ], grid: {}, series: [ { animation: false , barCategoryGap: '40%' , barGap: '-100%' , data: dataAxis, itemStyle: { normal: { color: '#000' }, }, type: 'bar' , }, { data: chartsCost, itemStyle: { emphasis: { barBorderRadius: 20 , // @ts-ignore color: new echarts.graphic.LinearGradient(0, 0, 0, 1 , [ { offset: 0, color: 'rgba(215,59,255,1)' }, { offset: 0.5, color: 'rgba(66,70,175,1)' }, ]), }, normal: { barBorderRadius: [ 3, 3, 0, 0 ], // @ts-ignore color: new echarts.graphic.LinearGradient(0, 0, 0, 1 , [ { offset: 0, color: 'rgba(215,59,255,1)' }, { offset: 0.6, color: 'rgba(66,70,175,1)' }, ]), }, }, type: 'bar' , }, ], xAxis: { axisLabel: { textStyle: { color: 'rgba(136,58,253,1)' , }, }, axisLine: { show: true , }, axisTick: { show: true , }, data: dataAxis, name: '日期' , nameTextStyle: { color: 'rgba(136,58,253,1)' , }, z: 10 , }, yAxis: { axisLabel: { textStyle: { color: 'rgba(136,58,253,1)' , }, }, axisLine: { show: false , }, axisTick: { show: false , }, name: '投放额' , nameTextStyle: { color: 'rgba(136,58,253,1)' , }, splitLine: { lineStyle: { color: 'rgba(136,58,253,.2)' , }, show: true , }, }, } }
// 3. 调用echarts-for-react
< ReactEcharts option ={ this .option} notMerge ={ true } lazyUpdate ={ true } style ={{ height: '100%' }} />
查看更多关于typescript + echarts-for-react 制作渐变柱状图, 提示[ts] 类型“的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did222471