当我的对象里面有一个数组时,如何创建一个接口?

时间:2014-07-21 16:02:44

标签: javascript typescript

我在Javascript中有一个我希望能够传递的对象:

var a = 
{
 "city":null,
 "text":"x",
 "cities":[{ "locId":1,     // int
             "type":null,   // null or string
             "state":false, // true or false
             "text":"x"},
            {"locId":2,
             "type":null,
             "state":false,
             "text":"x"}
           ]
}

我开始学习打字稿。有人能告诉我如何创建一个界面来建模这个对象。我还可以把它放在哪里。我读到了有一个global.d.ts文件。那是通常存储接口的地方还是global.ts?

1 个答案:

答案 0 :(得分:3)

存储在变量中的第一个对象将有一个接口,我们称之为ISomething。然后会有一个城市ICity的界面。

interface ISomething{
    city: ICity;
    text: string;
    cities: ICity[];
}

interface ICity {
    locId: number;
    type: string;
    state: boolean;
    text: string;
}

您可以将它们存储在标准.ts文件中。我会将接口放到d.ts文件中,以防您为不属于您的代码创建接口。

由于 typescript 支持模块,我会将这些接口放到模块而不是全局范围。