自引用打字稿 Class
Self Referencing Typescript Class
我有一个 JSON 对象,我想用 angular2 打字稿 class 表示它。 JSON 对象中有一个它自己类型的对象数组。 JSON 对象如下所示:
{
"data": {
"id": 5
"type": "taxons",
"attributes": {
name: "Vehicles & Vehicle Accessories",
"taxons": [{
"id": 8,
"type": "taxons",
"attributes": {
name: "Make",
"taxons": []
},
"id": 9,
"type": "taxons",
"attributes": {
name: "Model",
"taxons": []
}
}]
}
}
当我在打字稿中创建 taxon
模型时,我陷入了如何在 taxons
数组中表示自引用 taxon
的问题。
我目前有这样的class。
export class Taxon {
constructor (
public id: number,
public name: string,
public taxons: //I am stuck here.
)
}
如何获取对 self
的引用,以便我可以拥有类似
的内容
public taxons: Array<self>
或者我还能怎么做才能获得预期的行为。
我建议通过如下界面执行此操作:
interface IFoo {
id: number;
name: string;
foos?: IFoo[];
}
var foo: IFoo = {
id: 1,
name: 'name 1',
foos: [
{id: 2, name: 'child 2'}
]
}
关键是使用 ?
使 foos
属性 可选
如果确实需要,您也可以使用 class。
您所要做的就是指定类型。
export class Taxon {
constructor (
public id: number,
public name: string,
public taxons: Taxon[]
)
}
我有一个 JSON 对象,我想用 angular2 打字稿 class 表示它。 JSON 对象中有一个它自己类型的对象数组。 JSON 对象如下所示:
{
"data": {
"id": 5
"type": "taxons",
"attributes": {
name: "Vehicles & Vehicle Accessories",
"taxons": [{
"id": 8,
"type": "taxons",
"attributes": {
name: "Make",
"taxons": []
},
"id": 9,
"type": "taxons",
"attributes": {
name: "Model",
"taxons": []
}
}]
}
}
当我在打字稿中创建 taxon
模型时,我陷入了如何在 taxons
数组中表示自引用 taxon
的问题。
我目前有这样的class。
export class Taxon {
constructor (
public id: number,
public name: string,
public taxons: //I am stuck here.
)
}
如何获取对 self
的引用,以便我可以拥有类似
public taxons: Array<self>
或者我还能怎么做才能获得预期的行为。
我建议通过如下界面执行此操作:
interface IFoo {
id: number;
name: string;
foos?: IFoo[];
}
var foo: IFoo = {
id: 1,
name: 'name 1',
foos: [
{id: 2, name: 'child 2'}
]
}
关键是使用 ?
foos
属性 可选
如果确实需要,您也可以使用 class。 您所要做的就是指定类型。
export class Taxon {
constructor (
public id: number,
public name: string,
public taxons: Taxon[]
)
}