Typescript TS2322型&x27;字符串';不可分配给类型'&引用;左“左”&引用;中心&引用;对未定义';
我是打字新手。我使用ant design版本4.0,我希望将align属性添加到我的列中,但在表的columns属性中,它显示了此错误。我知道我应该将变量的类型与AlignType匹配,但我不知道如何准确地进行匹配。提前谢谢你们Typescript TS2322型&x27;字符串';不可分配给类型'&引用;左“左”&引用;中心&引用;对未定义';,typescript,antd,Typescript,Antd,我是打字新手。我使用ant design版本4.0,我希望将align属性添加到我的列中,但在表的columns属性中,它显示了此错误。我知道我应该将变量的类型与AlignType匹配,但我不知道如何准确地进行匹配。提前谢谢你们 interface ColumnSharedType<RecordType> { title?: React.ReactNode; key?: Key; className?: string; fixed?: FixedTyp
interface ColumnSharedType<RecordType> {
title?: React.ReactNode;
key?: Key;
className?: string;
fixed?: FixedType;
onHeaderCell?: GetComponentProps<ColumnsType<RecordType>[number]>;
ellipsis?: boolean;
align?: AlignType;
}
export interface ColumnGroupType<RecordType> extends ColumnSharedType<RecordType> {
children: ColumnsType<RecordType>;
}
export declare type AlignType = 'left' | 'center' | 'right';
接口列共享类型{
标题?:React.ReactNode;
键?:键;
类名?:字符串;
固定?:固定类型;
onHeaderCell?:获取组件道具;
省略?:布尔;
对齐?:对齐类型;
}
导出接口ColumnGroupType扩展ColumnSharedType{
儿童:柱状体;
}
导出声明类型AlignType='left'|'center'|'right';
const列=[
{
标题:“国家”,
数据索引:“状态”,
render:(text:any)=>{text},
align:'左',//它需要类型AlignType
},
]
返回(
//TS2322类型“字符串”不可分配给类型“左”|“中”|“右”|未定义”。
)
ps:我添加了新变量
const right: AlignType = 'right';
const columns = [
{
title: 'State',
dataIndex: 'state',
render: (text: any) => <a>{text}</a>,
align: right,
},
]
const right:AlignType='right';
常量列=[
{
标题:“国家”,
数据索引:“状态”,
render:(text:any)=>{text},
对齐:对,
},
]
它可以工作,但我不确定这是一个好的解决方案。创建一个新的变量以保持清晰并不是最糟糕的解决方案,如果你想简化它,也可以这样做
const columns = [
{
title: 'State',
dataIndex: 'state',
render: (text: any) => <a>{text}</a>,
align: 'right' as AlignType,
}
const列=[
{
标题:“国家”,
数据索引:“状态”,
渲染:(文本:任意)=>
const right: AlignType = 'right';
const columns = [
{
title: 'State',
dataIndex: 'state',
render: (text: any) => <a>{text}</a>,
align: right,
},
]
const columns = [
{
title: 'State',
dataIndex: 'state',
render: (text: any) => <a>{text}</a>,
align: 'right' as AlignType,
}