Angular2英雄之旅 – onSelect(英雄:英雄)中的冒号是什么意思?
我正在做Angular2英雄项目
https://angular.io/docs/ts/latest/tutorial/toh-pt2.html之旅
. <li *ngFor="let hero of heroes" (click)="onSelect(hero)">{{hero.name}}</li> 在这里,我可以使用以下功能提醒当前的英雄姓名和身份 onSelect(hero) { alert(hero.id); } 但是为什么在官方教程中使用它 onSelect(hero: Hero){ } 为什么英雄:英雄? 还有什么意思onSelect(hero:Hero):void {}. 的意义是什么 selectedHero: Heroes; onSelect(hero: Heroes): void { this.selectedHero = hero; } 请帮忙 .
当您输入“英雄”时,它将假定它具有“任何”类型.当你说英雄:Hero时,你将变量的类型划分为’Hero’,这意味着该函数只接受Hero类型的参数或它的抽象.
编辑:对于void部分,这是函数的返回类型.虚空意味着它什么都不会返回. EDIT2: selectedHero: Hero OnSelect(hero: Hero): void{ this.selectedHero = hero; } 所以’selectedHero:Hero’部分你定义了’Hero’类型的变量’selectedHero’. 你定义你的函数’OnSelect’,它接受’Hero’类型的参数’hero’. ‘hero’将是您在“OnSelect”函数中用于访问参数的名称. 该函数返回void,这意味着它不返回任何内容,只是执行函数中声明的内容. 部分this.selectedHero =英雄;比较棘手.在组件的上方,您定义了一个名为“hero”的Hero变量.它超出了函数的范围. ‘this’指的是您所在的组件类,它是用于访问它的关键字.因此,要访问函数之外但仍在对象中的变量,请使用关键字“this”. 好吧,当你点击英雄时,OnSelect功能会被触发,你传递你刚刚点击的英雄(英雄:’英雄’).然后你做的是设置当前对象的英雄(this.selectedHero)等于你刚刚点击的英雄(英雄:英雄). 每次单击一个英雄时,它都会将selectedHero替换为您单击的一个. PS:我对’this’关键字的解释是抽象的,可以理解,我知道还有更多,然后我解释,但这是为了这个人的问题,因为他是新的发展. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |