- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在做 Angular2 英雄之旅项目 https://angular.io/docs/ts/latest/tutorial/toh-pt2.html.
<li *ngFor="let hero of heroes" (click)="onSelect(hero)">{{hero.name}}</li>
这里我可以使用下面的函数提醒当前英雄的名字和id
onSelect(hero) {
alert(hero.id);
}
但是为什么在官方教程中是用
onSelect(hero: Hero){
}
为什么英雄:英雄?
还有 onSelect(hero: Hero): void { }
的含义是什么。
什么意思
selectedHero: Heroes;
onSelect(hero: Heroes): void {
this.selectedHero = hero;
}
请帮忙。
最佳答案
当您键入“hero”时,它会假定它的类型为“any”。当你说 hero: Hero 时,你将变量的类型限定为“Hero”,这意味着该函数将只接受 Hero 类型的参数或其抽象。
编辑:对于 void 部分,这是函数的返回类型。 Void 表示它不会返回任何内容。
编辑2:
selectedHero: Hero
OnSelect(hero: Hero): void{
this.selectedHero = hero;
}
因此,您在“selectedHero: Hero”部分定义了一个类型为“Hero”的变量“selectedHero”。
您定义函数“OnSelect”,它接受类型为“Hero”的参数“hero”。 “英雄”将是您用来访问“OnSelect”函数中的参数的名称。
该函数返回 void,这意味着它不返回任何内容,只执行函数中声明的操作。
这部分 this.selectedHero = hero;更棘手。在您的组件上方,您定义了一个名为“hero”的 Hero 变量。它超出了函数的范围。 'this' 指的是您所在的组件类,它是用于访问它的关键字。因此,要访问函数之外但仍在对象中的变量,请使用关键字“this”。
好的,当您点击一个英雄时,OnSelect 函数被触发,您传递您刚刚点击的英雄(英雄:'Hero')。然后,您要做的是将当前对象 (this.selectedHero) 的英雄设置为您刚刚单击的英雄 (hero: Hero)。
每次你点击一个英雄,它会用你点击的英雄替换selectedHero。
PS:我对“this”关键字的解释尽可能抽象,我知道还有很多内容然后我解释了,但这是为了提问的人,因为他是开发新手.
关于Angular2英雄之旅 - onSelect中的冒号是什么(英雄: Hero) mean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42486561/
我是docker的新手,我正在尝试将Angular示例项目“Tour of heros”进行docker化,您可以在这里找到: https://angular.io/generated/zips/to
当我点击“结束游览”按钮时,我无法再次开始 Bootstrap 游览。我搜索了所有 documentation ,但我还没有找到解决方案。 最佳答案 也试试 tour.restart()。我刚刚问了同
我正在浏览Tour C++中的Aliases模板。我不明白下面的代码以及如何使用它? template class Vector { public: using value_type = T;
我已经实现了intro.js到我的网站。但我只想在第一次访问时开始旅行。可能是通过使用cookie..网站是用html而不是php制作的.. 最佳答案 JavaScript cookie 是一种解决方
我想使用Knockout.js与 Bootstrap Tour 。特别是,我想将一些数据绑定(bind)点击处理程序附加到游览步骤中的按钮。 我创建了一个像这样的简单游览: var tour = ne
我正在学习着名的 Angular 教程,英雄之旅,但我正在努力迈出一步。 关于 sixth course, HTTP ,我们正在使用一种工具来模拟对 API 的 API 调用。 我想我遵循了所有步骤,
我正在做 Go 之旅,这部分是“slice 就像对数组的引用”。我根本没有更改此代码,所以我很好奇为什么它会耗尽内存。 最佳答案 不应该崩溃,可能是旅游网站有一段时间出了问题......目前任何方式,
A Tour of Go #23 : package main import ( "fmt" "math" ) func pow(x, n, lim float64) float64
无法将其分解为更小的示例...所以我使用 std::multimap 来存储一些值...这是一个简单的多项式类。 问题是最后一个函数,它将两个多项式相乘。当它与它们相乘时,它会产生一个具有多项式的多项
环境:Angular 5+ 来源:https://angular.io/tutorial 在 heroes.component.ts 类中有一个带冒号的赋值,如下所示: export class He
代码 let interestingNumbers = [ "Prime": [2, 3, 5, 7, 11, 13], "Fibonacci": [1, 1, 2, 3, 5, 8]
在 Bootstrap 演练中,我们有下一个和上一个按钮。在此点击下一步按钮,我们进入下一步。 但我想添加条件,如果该输入字段为空,则演练不应移至下一步,它应仅停留在当前步骤。 引用代码如下: rec
我是一名优秀的程序员,十分优秀!