我下面this part of the tutorial爲AngularJS 2以下,但是當我嘗試從列表中選擇一個「英雄」的元素,我收到這樣的錯誤:的評估過程中角2錯誤「單擊」教程
EXCEPTION: Error during evaluation of "click"
ORIGINAL EXCEPTION: TypeError: l_context.onSelect is not a function
這與點擊模板的一部分結合:
<ul class="heroes">
<li *ngFor="#hero of heroes"
[class.selected]="hero === selectedHero"
(click)="onSelect(hero)">
<span class="badge">{{hero.id}}</span> {{hero.name}}
</li>
</ul>
,這是類AppComponent在那裏我定義ONSELECT功能:
export class AppComponent {
title = 'Tour of Heroes';
heroes = HEROES;
selectedHero: Hero;
onSelect(hero: Hero) { this.selectedHero = hero; }
}
我甚至試圖複製代碼到底如何在教程中,但仍然收到錯誤。怎麼了?
您必須確保該模板必須是AppComponent的一部分 –
您確定打字稿文件已被正確重新編譯,並且您刷新了頁面以重新載入生成的JS文件嗎?如果app.js文件具有onSelect功能,請在開發工具「源代碼」選項卡中查找。 –
如果您定義方法的返回類型,則可能會出現類似的錯誤,如'onSelect(hero:Hero):void {/*...*/}'。只是刪除返回類型,使其在這種情況下工作。 – Patrick