因此,我创建了一个表示元素属性的类:
export class ElementProperties {
constructor(
public value: string,
public adminConsentRequired: boolean,
public displayString?: string,
public description?: string){}
}
然后我要创建一个与普通Javascript中相同的对象:
static readonly MyObject = {
ChildProperty1: {
NestedPropA: new ElementProperties(
"My value",
true
),
NestedPropB: new ElementProperties(
"My value in B",
false
)
},
ChildProperty2: {
...
}
}
但是我得到了错误:
Class 'ElementProperties' used before its declaration.ts(2449)
我有数十种ElementProperties对象初始化,因此没有必要为每个对象创建变量。
任何想法如何解决?
谢谢。
答案 0 :(得分:0)
我觉得很蠢,但我找到了答案。
忘记了Typescript对文件中的声明顺序敏感。
MyObject
在同一文件的另一个类中,并在最后声明了ElementProperties类。
更改顺序,以便ElementProperties类首先声明它可以解决此问题。