ionic 2&angular 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 のように、その問題を解決するには、explicitlyObservable
クラス:
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
}
私はそれが良い習慣だとは思わないが、時々それは良い修正になる可能性がある。