2016-04-11 9 views
0

Winkel 2 - Tour der Helden - Unexpected token] - polyfills Bibliothek

export class Hero { 
 
\t id: number; 
 
\t name: string; 
 
}

import {Component, OnInit} from 'angular2/core'; 
 
import {Hero} from './hero'; 
 
import {HeroDetailComponent} from './hero-detail.component'; 
 
import {HeroService} from './hero.service'; 
 

 
@Component({ 
 
    selector: 'my-app', 
 
    template: ` 
 
    \t <h1>{{title}}</h1> 
 
    \t <h2>My Heroes</h2> 
 
\t \t <ul class="heroes"> 
 
\t \t <li *ngFor="#hero of heroes" (click)="onSelect(hero)" [class.selected]="hero === selectedHero"> 
 
\t \t \t <span class="badge">{{hero.id}}</span> {{hero.name}} 
 
\t \t </li> 
 
\t \t </ul> 
 
\t \t <my-hero-detail [hero]="selectedHero"></my-hero-detail> 
 
    \t `, 
 
    \t styles: [ 
 
    \t \t ` 
 
    \t \t .selected { color: green; } 
 
    \t \t ` 
 
    \t ], 
 
    \t directives: [HeroDetailComponent], 
 
    \t providers: [HeroService], 
 
}) 
 

 
export class AppComponent implements OnInit { 
 
\t public title = 'Tour of heroes'; 
 
\t public heroes = Hero[]; 
 
\t public selectedHero: Hero; 
 

 
\t constructor(private _heroService: HeroService) {} 
 

 
\t ngOnInit() { 
 
\t \t this.getHeroes(); 
 
\t } 
 

 
\t getHeroes() { 
 
\t \t this.heroes = this._heroService.getHeroes().then(heroes => this.heroes = heroes); 
 
\t } 
 

 
\t onSelect(hero: Hero) { 
 
\t \t this.selectedHero = hero; 
 
\t } 
 
}

ich ähnliche Probleme mit dem Angular 2 Typoskript Intro Tutorial aber nicht genau gesehen habe dieses ...

Error: SyntaxError: Unexpected token ](…) (angular2-polyfills.js.332) 

Haben Sie die Vorschläge zum Ändern der System.config in index.html versucht, aber diese funktionieren nicht.

Ich bekomme eine rote Unterstreichung in meinem Editor auf der Linie obwohl;

heroes = Hero[]; 

dies ändern zu;

heroes = []; 

behebt den Fehler aber gibt mir einen anderen als Ergebnis der nicht zu einem Array zu initialisieren. Ich bin neu in Typoskript, könnte also vielleicht eine einfache Syntax-Sache sein.

jede Hilfe geschätzt!

+0

'heroes = Held [];' Mit diesem haben Sie 'Hero' Klasse Formular Quellpfad importiert? – micronyks

+0

könnten Sie etwas Code hinzufügen, den Sie geschrieben haben? – ssuperczynski

+0

app.component.ts & hero.ts Dateien hinzugefügt in – tubbsy

Antwort

1

Dies ist der Code, den Sie

verwendet
export class AppComponent implements OnInit { 
    public title = 'Tour of heroes'; 

    **public heroes = Hero[];** 

    public selectedHero: Hero; 

    constructor(private _heroService: HeroService) {} 

    ngOnInit() { 
     this.getHeroes(); 
    } 

    getHeroes() { 
     this.heroes = this._heroService.getHeroes().then(heroes => this.heroes = heroes); 
    } 

    onSelect(hero: Hero) { 
     this.selectedHero = hero; 
    } 
} 

Hier ist der blockierten Code sollte die Verwendung als

öffentlichen Helden sein: Held [];

+0

Danke, das hat für mich nach sreeramus Kommentar funktioniert. Ist die Zuweisung anders, weil '=' zum Erstellen einer lokalen Variablen verwendet wird, während ':' zum Hinzufügen einer Eigenschaft zur Instanz verwendet wird? – tubbsy

Verwandte Themen