2016-01-02 8 views
10

app/boot.tsAngular2 Ausnahme: Token muss

import {bootstrap} from 'angular2/platform/browser'; 
import {AppComponent} from './app.component'; 
bootstrap(AppComponent); 

app/app.component.ts

import {Component} from 'angular2/core'; 
@Component({ 
    selector: 'my-app', 
    template: '{{title}}' 
}) 
class AppComponent { 
    title: "app" 
} 

Fehler definiert werden:

EXCEPTION: Token must be defined! 
STACKTRACE:BrowserDomAdapter.logError @ angular2.dev.js:23514 
ExceptionHandler.call     @ angular2.dev.js:1147 
(anonymous function)     @ angular2.dev.js:14801 
NgZone._notifyOnError     @ angular2.dev.js:5796 
collection_1.StringMapWrapper.merge.onError @ angular2.dev.js:5700 
run         @ angular2-polyfills.js:141 
(anonymous function)     @ angular2.dev.js:5719 
NgZone.run       @ angular2.dev.js:5681 
ApplicationRef_.bootstrap    @ angular2.dev.js:14906 
bootstrap        @ angular2.dev.js:25054 
execute        @ boot.ts:4 
u          @ system.src.js:4597 
execute        @ system.src.js:4597 
y          @ system.src.js:4597 
... 

Antwort

16

Dies ist ein weiterer Fehler, hat mich mehrere Male erwischt. Ich habe (noch einmal) vergessen, meine Root-Komponente zu exportieren. Es sollte sein:

export class AppComponent { 

Wenn ich die Zeit genommen, nur ein bisschen näher an der Stack-Trace zu suchen (anstatt Stackoverflow des Suchens und nicht mein genaues Problem zu finden), würde ich habe bemerkt, dass es eine der referenzierten Dateien, die ich schrieb, boot.ts:4.

3

In meinem Fall, dass am Ende der folgenden Zeile nur wegen Semikolon war:

import {Component} from 'angular2/core'; 
+1

Sie haben dies seit dem Release Candidate (s) geändert. Jetzt ist es: 'importieren {Component} von" @ angular/core ";' – Charlie

1

ich tun musste, sicher AppComponent macht in meinem main.ts in die Bootstrap-Funktion übergeben:

bootstrap(AppComponent); 
0

Stellen Sie sicher, dass alle diese Einträge haben, auch für Typo-Fehler überprüfen App statt AppComponent etc

app.component.ts

export class AppComponent { 
    name: string; 

    constructor() { 
    this.name = "World"; 
    } 
} 

main.ts

import {bootstrap} from 'angular2/platform/browser'; 
import {AppComponent} from './app.component'; 

bootstrap(AppComponent); 
2

Nur für alle anderen hier kommt mit diesem sehr allgemeine Fehlermeldung für jedes Licht suchen, war ich diese Nachricht empfangen aus einer meiner Testspezifikationsdateien heraus, weil am Ende der gleichen Spezifikationsdatei ein Testdienst definiert war, der einfach nach oben verschoben wurde (vor der Testspezifikation) und jetzt alles wie erwartet funktioniert.

+0

Um hinzuzufügen, hatte ich einen Tippfehler auf Service, den ich in einem vor Haken einspritzte, Nachdem das Reparieren dieser Dinge fortgesetzt wurde, zu arbeiten. –

0

Ich habe dieses Problem auch aufgetreten. In meinem Fall war es wegen der Augury-Erweiterung, die warf, weil ich Angular 2.1.3 hatte und es unterstützt 2.3.0 und höher.

Verwandte Themen