2016-09-17 93 views
0

我嘗試在我的組件注入的服務,我得到這個錯誤:無法解析的所有參數

enter image description here

news.component.ts

import { Component,OnInit } from '@angular/core'; 
import { NewsService } from './index'; 


declare var jQuery:any; 

@Component({ 
    moduleId: module.id, 
    selector: 'news-selector-comp', 
    templateUrl:'news.html' 

}) 

export class NewsSelectorComponent implements OnInit { 

     isLoading = true; 
     isError = false; 
     News:any; 


     constructor(public newsService:NewsService) { } 

} 

news.module.ts

enter image description here

news.service.ts

import {Http, Headers} from '@angular/http'; 
import { Injectable } from '@angular/core'; 
import { News, NewsImp } from './news'; 
import { Observable } from 'rxjs/Observable'; 
import 'rxjs/add/operator/map'; 

@Injectable() 
export class NewsService { 

_url = '<%= SYSTEM_URL%>/news'; 
token = window.localStorage.getItem('token'); 
user_id = window.localStorage.getItem('user_id'); 
    constructor(private _http:Http) { 

    } 

    getNews() : Observable<NewsImp[]> { 

     return this._http.get('https://jsonplaceholder.typicode.com/posts').map(res => res.json()); 
    } 

    postNews() : Observable<News[]> { 

     var headers = new Headers(); 
      headers.append('Content-Type', 'application/json'); 

     var news = { 
     user_id: this.user_id, 
     token : this.token 
     }; 

     return this._http.post(this._url, JSON.stringify(news), {headers:headers}).map(res => res.json().data); 
    } 

} 
+0

你能告訴我們NewsService代碼嗎? – micronyks

+0

始終將代碼作爲代碼發佈,而不是作爲圖像發佈。 –

+2

在NewsModule的進口數組中添加HttpModule – Siraj

回答

0

一切看起來都不錯,根據您的代碼預計下面的部分。

import { BrowserModule } from '@angular/platform-browser'; 
import {NewsService} from './index'; 
@NgModule({ 
    imports:  [BrowserModule], 
    //In you main module, you should use BrowswerModule as shown here. 
    // In feature module you should use CommonModule 

    declarations: [NewsSelectorComponent], 
    providers: [NewsService], 
    bootstrap: [NewsSelectorComponent] 
}) 

我認爲這段代碼應該可以工作。

1

我自己也見過這個問題,但也許是另一個原因。我注意到你在這裏使用「桶」的方法:

import { NewsService } from './index'; 

嘗試直接從它已經從導出的文件導入NewsService類。這似乎是一個常見問題。

相關問題