无法解析所有参数 [英] Can't resolve all parameters

查看:28
本文介绍了无法解析所有参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试在我的组件中注入服务,但出现此错误:

I try to inject service in my component and I get this error:

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

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);
  }

}

推荐答案

我自己也看到过这个问题,但可能是出于不同的原因.我注意到您在这里使用了桶"方法:

I have seen this issue myself, but for perhaps a different reason. I notice you are using the "barrels" approach here:

import { NewsService } from './index';

尝试直接从导出的文件中导入 NewsService 类.这似乎是一个常见问题.

Try importing the NewsService class directly from the file it has been exported from. This seems to be a common issue.

这篇关于无法解析所有参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆