我有一个Angular 8应用。
下面是我在打字稿中的模特之一。
export class Movie
{
title:string;
tickets: Array<Ticket>;
}
export class Ticket
{
name:string;
price:number;
}
在其中一个组件(电影)中,当我访问movie
对象时,tickets
未被初始化。
movie.component.ts
export class MovieComponent
{
movieObj:Movie;
constructor()
{
this.movieObj = new Movie();
console.log(this.movieObj); // outputs title value but not tickets
//console.log(this.movieObj.tickets[0].name); //undefined
}
}
在TypeScript中检查数组类型时,它是一个接口。 (我们无法创建接口的对象)
如何在打字稿/角度中初始化数组?
谢谢!
您可以在类本身中
initialize
。
export class Movie
{
title:string = 'Movie';
tickets: Array<Ticket> = [{name: 'Ticket', price: 300}];
}
您可以做这样的事情。
export class Movie
{
title:string = 'Movie';
tickets: Ticket[] = [];
}
export class Ticket
{
name:string;
price:number;
}