Impossible de trouver le module './dans la mémoire des données-service " dans la tour des héros pour Angular2
Je suis en train de travailler à travers les Angular2 tour des héros de l'app, et je suis en cours d'exécution dans les bugs sur le Http section du tutoriel.
J'ai d'abord été l'obtention de l'erreur:
Cannot find module 'angular2-in-memory-web-api'
Mais d'une correction à l'aide de la les informations de cette question.
Cependant, à cette même étape, je suis également l'erreur suivante:
app/app.module.ts(10,38): error TS2307: Cannot find module './in-memory-data-service'.
J'ai triple vérifié et je crois que mes deux dans la mémoire des données de service.fichier ts et mon application.le module.fichier ts sont exactement les mêmes que ceux énumérés dans le tutoriel (à ce point particulier dans le temps).
Maintenant mon dans la mémoire des données de service.ts fichier ressemble à ceci:
CODE:
import { InMemoryDbService } from 'angular2-in-memory-web-api';
export class InMemoryDataService implements InMemoryDbService {
createDb() {
let heroes = [
{id: 11, name: 'Mr. Nice'},
{id: 12, name: 'Narco'},
{id: 13, name: 'Bombasto'},
{id: 14, name: 'Celeritas'},
{id: 15, name: 'Magneta'},
{id: 16, name: 'RubberMan'},
{id: 17, name: 'Dynama'},
{id: 18, name: 'Dr IQ'},
{id: 19, name: 'Magma'},
{id: 20, name: 'Tornado'}
];
return {heroes};
}
}
Mon app.le module.ts fichier ressemble à ceci:
CODE:
import './rxjs-extensions';
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
//Imports for loading & configuring the in-memory web API
import { InMemoryWebApiModule } from 'angular2-in-memory-web-api';
import { InMemoryDataService } from './in-memory-data-service';
import { AppComponent } from './app.component';
import { DashboardComponent } from './dashboard.component';
import { HeroesComponent } from './heroes.component';
import { HeroDetailComponent } from './hero-detail.component';
import { HeroService } from './hero.service';
import { routing } from './app.routing';
@NgModule({
imports: [
BrowserModule,
FormsModule,
HttpModule,
InMemoryWebApiModule.forRoot(InMemoryDataService),
routing
],
declarations: [
AppComponent,
DashboardComponent,
HeroDetailComponent,
HeroesComponent
],
providers: [
HeroService
],
bootstrap: [ AppComponent ]
})
export class AppModule {
}
Je ne sais pas si cela est dû à une sorte de dépendance dans le paquet.json ou systemjs.config qui n'est pas réglé de façon appropriée, ou si il y a une simple erreur, je l'aide.
MODIFIER
Mon systemjs.config.js fichier ressemble à ceci:
CODE:
(function (global) {
System.config({
paths: {
//paths serve as alias
'npm:': 'node_modules/'
},
//map tells the System loader where to look for things
map: {
//our app is within the app folder
app: 'app',
//angular bundles
'@angular/core': 'npm:@angular/core/bundles/core.umd.js',
'@angular/common': 'npm:@angular/common/bundles/common.umd.js',
'@angular/compiler': 'npm:@angular/compiler/bundles/compiler.umd.js',
'@angular/platform-browser': 'npm:@angular/platform-browser/bundles/platform-browser.umd.js',
'@angular/platform-browser-dynamic': 'npm:@angular/platform-browser-dynamic/bundles/platform-browser-dynamic.umd.js',
'@angular/http': 'npm:@angular/http/bundles/http.umd.js',
'@angular/router': 'npm:@angular/router/bundles/router.umd.js',
'@angular/forms': 'npm:@angular/forms/bundles/forms.umd.js',
//other libraries
'rxjs': 'npm:rxjs',
'angular2-in-memory-web-api': 'npm:angular2-in-memory-web-api',
},
//packages tells the System loader how to load when no filename and/or no extension
packages: {
app: {
main: './main.js',
defaultExtension: 'js'
},
rxjs: {
defaultExtension: 'js'
},
'angular2-in-memory-web-api': {
main: 'index.js',
defaultExtension: 'js'
}
}
});
})(this);
Mon fichier de structure actuellement ressemble à ceci:
Structure De Fichier:
app/app.module.ts
app/in-memory-data-service.ts
index.html
systemjs.config.js
Merci.
Merci pour les commentaires. Je suis allé de l'avant et fait les mises à jour que vous avez demandé. S'il vous plaît laissez-moi savoir si vous avez d'autres questions.
Bien sûr, je prends un coup d'oeil à droite pour voir si je peux trouver quelque chose, Merci pour les mises à jour!
OriginalL'auteur Jonathan Bechtel | 2016-10-05
Vous devez vous connecter pour publier un commentaire.
Juste assurez-vous que toutes vos bases sont couvertes
Dans votre paquet.json, doit correspondre à celui sur cette page.
Aussi, votre systemjs.config fichier est trop bon!!
Dans votre app.le module.ts, assurez-vous que votre
in-memory-data-service
import correspond à votre fichier, car dans leur exemple, ils ontin-memory-data.service
Si votre fichier doit être nommé dans la mémoire des données de service.ts. Il ressemble pour moi qu'il y est une appellation faute de frappe ou une sorte de structure de fichier de la question.
Il semble que vous résolu le paquet.json question, et l'erreur que vous obtenez est de dire qu'il ne peut pas trouver ce module, maintenant, ce pourrait être parce que vous avez une faute de frappe dans le nom du fichier ou le chemin du fichier est incorrect dans la ligne d'importation.
Hey juste une tête.....cette réponse a fait le tour. Je suis toujours gêné quand la réponse est tellement simple, mais mon nom de fichier est mal :(.
Oh ne vous inquiétez pas de l'homme nous le faisons tous! Ils sont difficiles à dépister trop! Bon Travail, heureux de l'aider!
Angulaire de nommage/verbiage il y a dans le TOH tutoriel crée des problèmes
OriginalL'auteur Logan H
Va créer le
src/app/in-memory-data.service.ts
fichier. Puis ajoutez le code figurant dans le tutoriel et il va fonctionner. Autant que je sache, ils n'ont même pas entendre que, dans le tutoriel, donc ne vous sentez pas mal. En fait, ce qu'ils disent estQui est du charabia et le mal.
Merci! C'est très déroutant, à attendre que le fichier soit créé et rien ne se passe. C'est ce qui me manquait!
Je vous remercie beaucoup. Ils ont TOTALEMENT sauté cette étape.
Merci! Ce doit être marqué comme réponse correcte. Vous wold pense que le tutoriel aurait été mis à jour par maintenant.
C'est certainement le plus de bonne réponse, merci beaucoup.
OriginalL'auteur user875234
Mes projets créés à l'aide des Outils CLI, et j'ai installé ceci:
Cela fonctionne pour moi.
Vous êtes les bienvenus.
OriginalL'auteur Hüseyin Türkmenoğlu
Pour Angular5 tutoriel et [email protected]:
Ajouter un nouveau fichier "dans la mémoire des données.service.ts" à la racine de votre répertoire avec ce contenu:
OriginalL'auteur Pavlo Lyakhov
Pour résoudre ce problème, je n'ai
comme suggéré par l'utilisateur user875234
Mais aussi beaucoup de réponses ici ont copié et collé à partir de la question
Qui est faux. Il doit être tel qu'il apparaît dans les Héros tutoriel
Avis "dataDOTservice", pas un trait d'union. Il nous semble débutants comme une erreur dans le tutoriel, et il ne correspond pas à l'OP de la question ou des réponses ici. Le point est correcte, le trait d'union est mal.
OriginalL'auteur Rin and Len
Faire global de l'installation , l'utilisation sudo si vous avez des problèmes d'autorisations
OriginalL'auteur JuricaJaman
Angulaire 6 - Windows j'ai eu
Quand je change de
(données sur les avis.service de modification des données-service)
et de renommer le fichier en mémoire des données de service.ts cela fonctionne.
OriginalL'auteur Levijatanu
pour résoudre ce problème, essayez cette étape
ng generate service InMemoryData --module=app
avec votre angulaire de la cli, puis remplacez le code figurant dans le tutoriel, et de l'enregistrer.app.module.ts
, et ajouter un peu de code, de sorte que le code de ce genre.private heroesUrl = 'api/heroes'; //URL to web api
danshero.service.ts
ng sever
, et Profitez-en!.OriginalL'auteur Latief Anwar
Dans la tour des héros (Angulaire tutoriel échantillon) après
vous devez exécuter la commande:
OriginalL'auteur Mohammad Aghazadeh