Answer the question
In order to leave comments, you need to log in
Why and how to fix?
Can you please tell me what is causing this error and how to fix it?
It pops up when trying to ng build.
ERROR in C:/Users/valer/WebstormProjects/mean-core/src/app/app.component.ts (2,3
ERROR in C:/Users/valer/WebstormProjects/mean-core/src/app/app.module .ts(7,10):
npm ERR!code ELIFECYCLE
npm ERR!errno 1
npm [email protected] build: `ng build` npm ERR
!Exit status 1 npmERR!npmERR !Failed at the mean [email protected] build script.npm ERR!This is probably not a problem with npm.There is likely additional log npm ERR!A complete log of this run can be found in: npm ERR!C:\Users\valer\ AppData\Roaming\npm-cache\_logs\2017-10-01T08_28_00_
import { Component, OnInit } from '@angular/core';
import { PostsService } from '../posts.service';
@Component({
selector: 'app-posts',
templateUrl: './posts.component.html',
styleUrls: ['./posts.component.css']
})
export class PostsComponent implements OnInit {
// instantiate posts to an empty array
posts: any = [];
constructor(private postsService: PostsService) { }
ngOnInit() {
// Retrieve posts from the API
this.postsService.getAllPosts().subscribe(posts => {
this.posts = posts;
});
}
}
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { RouterModule, Routes } from '@angular/router';
import { AppComponent } from './app.component';
import { PostsComponent } from './posts/posts.component';
import { PostsService } from './posts.service';
// Define the routes
const ROUTES = [
{
path: '',
redirectTo: 'posts',
pathMatch: 'full'
},
{
path: 'posts',
component: PostsComponent
}
];
@NgModule({
declarations: [
AppComponent,
PostsComponent
],
imports: [
BrowserModule,
FormsModule,
HttpModule,
RouterModule.forRoot(ROUTES) // Add routes to the app
],
providers: [PostsService],
bootstrap: [AppComponent]
})
export class AppModule { }
import { Injectable } from '@angular/core';
import { Http } from '@angular/http';
import 'rxjs/add/operator/map';
@Injectable()
export class PostsService {
constructor(private http: Http) { }
// Get all posts from the API
getAllPosts() {
return this.http.get('/api/posts')
.map(res => res.json());
}
}
{
"name": "mean-core",
"version": "0.0.0",
"license": "MIT",
"scripts": {
"ng": "ng",
"start": "ng build && node server.js",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/animations": "^4.2.4",
"@angular/common": "^4.2.4",
"@angular/compiler": "^4.2.4",
"@angular/core": "^4.2.4",
"@angular/forms": "^4.2.4",
"@angular/http": "^4.2.4",
"@angular/platform-browser": "^4.2.4",
"@angular/platform-browser-dynamic": "^4.2.4",
"@angular/router": "^4.2.4",
"axios": "^0.16.2",
"body-parser": "^1.18.2",
"core-js": "^2.4.1",
"express": "^4.16.1",
"rxjs": "^5.4.3",
"zone.js": "^0.8.14"
},
"devDependencies": {
"@angular/cli": "1.4.4",
"@angular/compiler-cli": "^4.2.4",
"@angular/language-service": "^4.2.4",
"@types/jasmine": "~2.5.53",
"@types/jasminewd2": "~2.0.2",
"@types/node": "~6.0.60",
"codelyzer": "~3.2.0",
"jasmine-core": "~2.6.2",
"jasmine-spec-reporter": "~4.1.0",
"karma": "~1.7.0",
"karma-chrome-launcher": "~2.1.1",
"karma-cli": "~1.0.1",
"karma-coverage-istanbul-reporter": "^1.2.1",
"karma-jasmine": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"protractor": "~5.1.2",
"ts-node": "~3.2.0",
"tslint": "~5.7.0",
"typescript": "~2.3.3"
}
}
Answer the question
In order to leave comments, you need to log in
You don't have AppComponent. In app.component.ts you have PostComponent, where is the AppComponent class that you specify in NgModule?
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question