2017-10-19 112 views
0

我收到了由vs代码激发的typescript ts链接警告。我得知,当我将鼠标悬停在服务名称上,因为某些原因,我无法弄清楚它是由哪个HttpService加下划线的。experimentalDecorators警告对于lint

[ts]修饰器的实验支持是 在未来发行版中更改的功能。设置'experimentalDecorators'选项 删除此警告。类HttpService的

我的意思是我能做到这一点的tsconfig.json

{ 
    "compilerOptions": { 
     "experimentalDecorators": true, 
     "allowJs": true 
    } 
} 

,这将删除错误,但是,这不是一个很好的做法,因为它扫灰尘在地毯下只为暂且。

什么是我们需要这样做,我们不必处理这个?

几乎在这里的准系统boilet板码有什么问题吗?

import {Injectable} from '@angular/core'; 
import {Http, Response, Headers, RequestOptions, ResponseContentType} from '@angular/http'; 
import {Observable} from 'rxjs/Observable'; 
import 'rxjs/Rx'; 

@Injectable() 
export class HttpService { 

    constructor(private http: Http) { 
    } 

    getData(url: any) { 
    const headers = new Headers(); 
    // headers.append('',''); 
    return this.http.get(url) 
     .map((response: Response) => response.json()); 
    } 


} 

回答

1

是警告你该行:

@Injectable() 

技术上实验性的功能。

你需要更新您的tsconfig.json:

//... 
"experimentalDecorators": true, 
//... 
+0

有趣的..不是角队谁建议给大家一个,即使你不打算使用它,它是最好的做法把它放在这样? –

+0

那么,我只是'@ @Injectable()'和HttpService不再下划线。感谢您的高举。 –

+0

@AverageJoe - 我正在使用实验性装饰器,它不是100%稳定的,但它是相当不可避免的,特别是如果您使用的是Angular。 – Fenton