2016-04-11 44 views
7

eccomi di nuovo qui, nella speranza di trovare una rapida soluzione a questo:angolare 2 Modulo non ha esportato membro

Link <- Click on this link to see the folder structure

//main.ts 
import {bootstrap} from 'angular2/platform/browser'; 
import {AppComponent} from './home.main'; 
import {InputComponent} from './home.controller'; 
import {enableProdMode} from 'angular2/core'; 


bootstrap(InputComponent); 
bootstrap(AppComponent); 

Questo è il mio file main.ts dove ho importare l'AppComponent da casa principale, ora il home.main assomiglia a questo:

import {Component} from 'angular2/core'; 

    @Component({ 
    selector:'home', 
    templateUrl:'/index/index.ejs' 
    }) 

    export class InputComponent { 
     name = 'test'; 
    } 

Tuttavia, quando ho eseguito questo, ottengo: error TS2305: Module '"controllers/home/home.main"' has no exported member 'AppComponent'. (Same goes for home.controller).

Grazie, Alex S.

risposta

4

Si dovrebbe avere qualcosa di simile nel modulo home.main:

@Component({ 
    (...) 
}) 
export class AppComponent { 
} 
+0

Grazie gentile signore :) Ho messo AppComponent nel controller di casa e InputController in home.main ... – Okei

+0

Oh! Prego! –

+0

Sì, non posso credere di aver fatto una mossa da principiante, haha, buona settimana, Thierry! :) – Okei

3

Se vedete questo errore in tutti i moduli @angular come router, nucleo, quindi assicurati che sia dovuto alla mancata corrispondenza delle versioni delle librerie. Generalmente tutti i moduli @angular devono essere della stessa versione eccetto il router.

per Es:

"@angular/common": "2.2.3", 
    "@angular/compiler": "2.2.3", 
    "@angular/core": "2.2.3", 
    "@angular/platform-browser": "2.2.3", 
    "@angular/platform-browser-dynamic": "2.2.3", 
    "@angular/router": "^3.3.0" <= Version mismatch*** 

la seguente combinazione tiri seguente errore

non ha esportato membro

ho cambiato la versione router per

"@ angolare/router": "^ 3.0.0"

L'errore è stato risolto.

Quindi, finché tutto è stabile, attenersi alla combinazione di lavoro.

+0

Ma come si fa? – Anuj

+0

La discrepanza di versione sembra altamente probabile. Ho avuto un problema simile dove @ angular/core, @ angular/forms, @ angular/http, @ angular/platform-browser-dynamic e altri pacchetti erano tutti versione '^ 4.2.4' ma @ angular/platform-browser era stato aggiornato a '^ 5.0.0', che ha provocato un modulo non ha errore StaticProvider membro esportato. Cambiando la versione in 4.2.4 il problema è scomparso. E leggere le [modifiche angolari5] (https://github.com/angular/angular/blob/master/CHANGELOG.md) da 'Provider []' a 'StaticProvider []' è una soluzione corretta. – hlovdal

0

Ho riscontrato questo problema anche quando ho esportato correttamente la classe sul mio altro file. Il riavvio della mia macchina lo ha risolto.

Problemi correlati