我正在使用Angular,我遇到了使用TypeScript语言的困难。我不确定TypeScript语法。
我不明白为什么要创建这样的对象:
export class MyClass {
isTrue: boolean;
complexObject: {
minValue: number;
stringValue: string;
};
MyClassString: string;
MyClassString2: string;
MyClassString3: string;
}
我创建了一个像这样的MyClass数组:
export const MYCLASS: MyClass[] = [
{
isTrue: false,
complexObject: {
minValue: 7,
stringValue: "hello"
},
MyClassString: "one",
MyClassString2: "two",
MyClassString3: "three"
}];
即使此代码中没有语法错误,Angular编译器也会出错。
如果我删除" complexObject"一切正常。 如果我只使用原始类型创建实例,则没有错误。 如何创建复杂对象并将其初始化为数组而不会出现编译错误?
只有具有这种语法的对象才能用这种语法实例化吗?
错误是:对象文字只能指定已知属性,而复杂对象'类型' MyClass'
中不存在答案 0 :(得分:0)
我认为如果以这种方式宣布你的课程会更好:
export class ComplexType {
minValue: number;
stringValue: string;
}
export class MyClass {
isTrue: boolean;
complexObject: ComplexType;
myClassString: string;
myClassString2: string;
myClassString3: string;
}
答案 1 :(得分:-1)
你可以像下面那样定义const
export const MYCLASS:Array<MyClass>=[
{
},
{
}
]