반응형
오류 TS4053: 내보낸 클래스에서 반환된 공용 메서드 유형에 '관찰 가능' 이름이 있거나 사용 중입니다.
저는 이온 2 & 각도 2로 앱을 구축하려고 하는데, 앱을 실행하려고 시도하는 동안 이 오류가 발생합니다. 저는 확인해야 할 다른 프로젝트를 구축하고 동일한 문제에 대해 정말 혼란스럽습니다.
이것은 나의 서비스 코드입니다.
import { Injectable } from '@angular/core';
import { Http } from '@angular/http';
import 'rxjs/add/operator/map';
import { Storage} from '@ionic/storage';
import {NavController} from "ionic-angular";
/*
Generated class for the MyService provider.
See https://angular.io/docs/ts/latest/guide/dependency-injection.html
for more info on providers and Angular 2 DI.
*/
@Injectable()
export class MyService {
public local :Storage;
public getsession : any;
constructor(private http: Http, private navCtrl : NavController) {
this.local = new Storage();
console.log("my-service page")
}
postLogin(data){
let link = "http://adirzoari.16mb.com/login.php";
return this.http.post(link,data)
.map(res => res.json())
}
checkToken(){
return this.getsession =this.local.get('token');
}
}
저는 이것이 동일한 문제에 직면한 다른 SO 사용자들에게 도움이 될 수 있도록 답변으로만 추가합니다.
@sudheer-kb가 언급한 것처럼, 이 문제를 해결하려면 다음을 명시적으로 가져와야 합니다.Observable
클래스:
import { Injectable } from '@angular/core';
import { Http } from '@angular/http';
// ...
import { Observable } from "rxjs/Observable"; // <- add this import
그런 다음 메소드에 명시적인 반환 유형을 지정합니다(또한 @ruffin의 의견에 감사드립니다).
postLogin(data): Observable<any> {
// ...
}
저도 비슷한 문제가 있었는데, 반품 방식의 문제와 관련이 있는 것 같습니다.제게 효과가 있었던 것은 메소드 선언 직후에 다음과 같이 ": any"를 간단히 추가하는 것입니다.
get(url) : any {
//code
}
저는 그것이 좋은 습관이라고 생각하지 않지만, 가끔은 좋은 치료법이 될 수 있습니다.
언급URL : https://stackoverflow.com/questions/39870881/error-ts4053-return-type-of-public-method-from-exported-class-has-or-is-using-n
반응형
'programing' 카테고리의 다른 글
범위에 배열을 쓰는 중입니다.어레이의 첫 번째 값만 가져옵니다. (0) | 2023.06.19 |
---|---|
테이블 열에 대한 Oracle의 비트 데이터 유형 (0) | 2023.06.19 |
문자열에서 하위 문자열의 n번째 발생 찾기 (0) | 2023.06.19 |
OR 기준이 있는 SUMIF (0) | 2023.06.19 |
MongoDB에서 데이터를 중지하지 않고 삭제하는 방법은 무엇입니까? (0) | 2023.06.19 |