我不确定这是否是这个问题的地方,但我被告知代码审查不适合它.
我刚学习Angular 2和Typescript,所以我正在学习以下教程:
https://angular.io/docs/ts/latest/tutorial/toh-pt4.html
在第三部分和第四部分之间,app.component.ts中英雄变量的声明更改为:
export class AppComponent { heroes = HEROES; }
至:
export class AppComponent { heroes: Hero[]; }
我理解第一个将它设置为英雄数组的常量,但为什么第二个使用冒号而不只是将它设置为空数组?
将第二个更改为=实际上会抛出表达式预期错误,所以基本上我只是想了解两者之间的差异.
解决方法
heroes: Hero[];
不会将其设置为值.
它只是定义了一个属性
> name =英雄
> type = Hero []表示Hero数组
>没有赋值使其保持默认值null.
初始化它看起来像
heroes: Hero[] = [new Hero('Spidey'),new Hero('Batman')];