Typescript下 Type ‘string | string[]‘ is not assignable to type ‘string | undefined‘

使用TS的时候。经常会因为一些数据类型导致编译不过,用惯了JS突然有点不习惯。在使用到antV Reac画图的时候,代码一直显示红线。dev模式下不影响运行,但是会导致编译失败。
Typescript下 Type ‘string | string[]‘ is not assignable to type ‘string | undefined‘_第1张图片
查看详细情况就会出现**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**自定义的那样给每个属性定义类型,只能通过上述方式进行。

你可能感兴趣的:(前端,typescript,javascript,前端)