如何在TypeScript中定义变量的静态类类型?
问题描述:
我有一个Angular2组件类似到下面的代码:如何在TypeScript中定义变量的静态类类型?
export ABC_Component class{
...
private xyzObj:any;
...
constructor(){
this.xyzObj= new ABC_Component.XYZ_Class();
}
...
private static XYZ_Class = class{
...
}
...
}
正如你可以看到xyzObj
是any
类型。 (而不是在代码的整体工作问题)
有没有办法,因为如果我试图确定它像下面做正确定义其类型:private xyzObj:ABC_Component.XYZ_Class;
的打字稿短绒显示Cannot find namespace for ABC_Component
新双方Angular2和打字稿。任何帮助赞赏。
答
我真的不明白你想用什么来达到目的。对于我来说,你试图在静态类属性中定义类看起来很奇怪。
在任何情况下,你没有正确地写这个类:
export class ABC_Component {
private xyzObj:any;
constructor(){
this.xyzObj = new ABC_Component.XYZ_Class();
}
private static XYZ_Class = class {
}
}
这里是另一种方法,如果你只是想创建一个不导出到其他一类,并且只用在这里:
export class ABC_Component {
private xyzObj: XYZ_Class;
constructor(){
this.xyzObj = new XYZ_Class();
}
}
class XYZ_Class {
}
忘记'这个'。想知道是否可以定义'any'以外的'xyzObj'类型。目的是定义一个类,使其对其他类不可见。 –
所以这里是另一种方法: ' export class ABC_Component {0} xyzObj:XYZ_Class; (){ 构造函数 }} 类XYZ_Class { \t } ' 在这个例子中 你有没有被出口到其他 –
一类我将能够用这种方法使用的模板内内'XYZ_Class'定义的属性使用'xyzObj'的组件?只是想确认它们在功能上是否有任何不同。 –