2016-05-27 16 views
-1

Ich kenne JavaScript. Ich lerne nur Typescript und dies gibt mir den Fehler: "Fehler: ReferenceError: ungültige linke Seite in der Zuordnung". Was ist los mit dir?Fehler: ReferenceError: Ungültige linke Seite in Zuordnung

import { Component } from '@angular/core'; 
import { Fruit } from './fruit'; 
import { PartComponent } from './part.component'; 
import { ByKindPipe } from './by-kind.pipe'; 

@Component({ 
    selector: 'my-app', 
    templateUrl: 'app/app.html', 
    directives:[PartComponent], 
    pipes: [ByKindPipe], 
    styles: ['div { color: blue; }'] 
}) 
export class AppComponent { 

    // this works 
    fruits: Fruit[] = [ 
      {"name": "apple", "kind": "tree"}, 
      {"name": "orange", "kind":"tree"}, 
      {"name": "strawberry", "kind": "berry"}, 
      {"name": "pear", "kind": "tree"}]; 

    // this works  
    things: string[] = ["a","b"]; 

    // this doesn't work 
    things[1] = "c"; 
} 

Bitte beachten Sie app/app.component.ts Datei in diesem plunk

+0

setzen Sie müssen den vollständigen Kontext hier für alle zu verstehen, was zu tun ist. –

+0

Es ist in der Plunk –

+3

Sie müssen den vollständigen Kontext ** hier ** einschließen. –

Antwort

3

Innerhalb einer Klasse Körper, können Sie initialisierten Mitglieder haben. Zum Beispiel haben Sie things vom Typ string[] deklariert. Das ist eine legale Mitgliedserklärung.

Sie kann nicht haben Anweisungen in Ihrer Klasse Körper. Der Code things[1] = "c"; ist eine Aussage. Wenn Sie so etwas tun möchten, sollten Sie es in die constructor

+0

Denken Sie an den Fehler, den dies verursachen würde, wenn Sie dasselbe in einem einfachen alten JavaScript-Objekt getan hätten. –

Verwandte Themen