使用TS的时候。经常会因为一些数据类型导致编译不过,用惯了JS突然有点不习惯。在使用到antV Reac画图的时候,代码一直显示红线。dev模式下不影响运行,但是会导致编译失败。
查看详细情况就会出现**xxxx is not assignable to type xxxxx
**,意思大概就是类型不匹配,需要手动设置Bar内属性的类型。
即使用as方式给属性赋予类型。
const lineconfig = {
data: linedata as any[],
xField: 'year' as string,
yField: 'gdp' as string,
seriesField: 'name' as string,
yAxis: {
label: {
formatter: (v: any) => `${v} 人`,
},
},
legend: {
position: 'top' as string,
} as Object,
smooth: true,
// @TODO 后续会换一种动画方式
animation: {
appear: {
animation: 'path-in' as string,
duration: 5000 as number,
},
},
};
因为是第三方组件的定义,所以不能想我们**interface
**自定义的那样给每个属性定义类型,只能通过上述方式进行。