![](/img/trans.png)
[英]Script for converting object of arrays with objects into an enum (typescript)
[英]Object of objects of arrays in Typescript
我有一个这样的结构,需要为此定义类型/接口,但是我无法使其正常工作。
layoutsSet: {
1: {
"lg": [
{
i: "1",
x: 0,
y: 0,
w: 2,
h: 2
},
{
i: "2",
x: 2,
y: 0,
w: 2,
h: 2
},
{
i: "3",
x: 4,
y: 0,
w: 2,
h: 2
},
]
}
};
那就是现在的样子。 它需要进行一些更改,因为在编译时出现错误:
TS2322:输入'{“ lg”:{i:字符串; x:数字; y:数字; w:数字; h:数字; } []; }”不可分配给“布局”类型。 类型'{“ lg”中缺少属性'md':{i:string; x:数字; y:数字; w:数字; h:数字; } []; }”。
export interface Layout {
i: string;
x: number;
y: number;
w: number;
h: number;
}
export enum Breakpoint {
LG = "lg",
MD = "md",
SM = "sm",
XS = "xs",
XXS = "xxs"
}
export interface LayoutBreakpoint extends Array<Layout> {}
export type Layouts = {
[b in Breakpoint]: LayoutBreakpoint
}
export interface LayoutsSet {
[index: number]: Layouts
}
我应该在这里进行哪些更改才能使其正常工作? 谁能帮我吗?
//编辑
最好的部分是当我改变时
export type Layouts = {
[key: string]: LayoutBreakpoint
}
现在正在运作...
但是,为什么不能将索引定义为枚举类型呢?
在interface LayoutsSet
您将index
定义为number
类型。 变量名不能是number
类型。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.