Je commence juste Angular 2/TypeScript en utilisant le Quickstart 5 minutes trouvé ici . J'ai rencontré ce qui semble être un problème commun, mais peut-être un peu différent . Je rencontre toutes sortes de problèmes de "Aucun membre exporté". Exemples:
Depuis app.module.ts:
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
Résultats
...node_modules/@angular2/core/index" has no exported member 'NgModule'.
et
...@angular/platform-browser/index" has no exported member 'BrowserModule'.
Et de main.ts:
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
jette:
...@angular/platform-browser-dynamic/index" has no exported member 'platformBrowserDynamic'.
J'utilise la version noeud 4.4.7 et la version npm 3.10.5.
Je comprends que ceux-ci sont probablement résolvables dans le contexte du tutoriel en faisant reculer node ou npm vers la version pertinente pour le tutoriel. Je suppose que je préférerais avoir une explication de la façon de rendre le code du didacticiel pertinent pour les versions actuelles de node.
ETA: ces erreurs se produisent lors de la compilation et non de l'exécution.
La classe NgModule
est exportée à partir de node_modules/@angular/core/src/metadata.d.ts
fichier via le node_modules/@angular/core/index.d.ts
une.
Je me demande si vous spécifiez correctement la propriété moduleResolution
dans votre tsconfig.json
fichier:
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node", // <-----
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
}
}
Pour moi, c'était le problème de l'éditeur VSCode. La simple réouverture de l'éditeur l'a résolu
veuillez mettre à jour toutes vos dépendances @angular dans package.json au moins "2.0.0-rc.5"
après cela, vérifiez votre application bootstrap in main.ts.
selon le journal des modifications de 2.0.0-rc.5, il y a un changement de bootstrap votre application. ou consultez également le guide du tutoriel mis à jour https://angular.io/guide/quickstart .
import {NgModule} from '@angular/core';
@NgModule({
declarations: […], // directives, components, and pipes owned by this NgModule
imports: [BrowserModule],
providers: […], // additional providers
bootstrap: [MainComponent],
})
class MyAppModule {}
// Ahead of Time compile
import {platformBrowser} from ‘@angular/platform-browser’;
platformBrowser().bootstrapModuleFactory(MyAppModuleNgFactory);
// JIT compile long form
import {platformBrowserDynamic} from ‘@angular/platform-browser-dynamic’;
platformBrowserDynamic().bootstrapModule(MyAppModule);
Dans le fichier package.json, toutes les dépendances qui utilisent rc.4, les remplacent par rc.5. Ensuite, cela fonctionnera.