小编M. *_*bib的帖子

如何在Ionic 2/Angular 2中解决一些Promise之后返回Observable?

我试图在成功完成Promise之后返回一个observable,但该函数没有返回Observable.要特定于代码,我想从存储中获取auth令牌(返回promise),然后在获取数据之后,然后生成对Api的Post请求(返回Observable).通过这样做,sublime文本在函数上给出了一个错误,"声明类型既不是'void'也不是'any'的函数必须返回一个值"下面是我的代码,

logout() : Observable<any>{
  this.userData.getAuthToken().then((token)=>{
    this.token = token;
    this.headers = new Headers ({
      "X-USER-TOKEN": token
    });
    this.options = new RequestOptions ({
      headers: this.headers
    });
    var logout_url = "Api logout method";
    return this.http.post(logout_url,{},this.options)
      .map (res => res.json())
  });
}
Run Code Online (Sandbox Code Playgroud)

如果我只是做一个帖子请求,那么它会像这样返回

return this.http.post(logout_url,{},this.options)
  .map (res => res.json())
Run Code Online (Sandbox Code Playgroud)

但是当我尝试获取数据时,它不会从此发布请求中返回值.任何帮助都感激不尽!提前致谢

ionic2 angular2-services angular

16
推荐指数
2
解决办法
2万
查看次数

IONIC 2本机Network.onDisconnect()运行代码两次

我正在使用ionic 2 RC1并使用sublime作为文本编辑器.我需要检查网络连接是否已连接.所以为了这个目的,我正在使用离子原生网络.但我面临着Network.onDisconnect()Observable的问题.我编辑了initializeApp()检查网络连接的方法,如果连接断开连接则显示警报.我写了以下代码app.component.ts

  showAlert(title, msg) {
    let alert = this.alertCtrl.create({
      title: title,
      subTitle: msg,
      buttons: ['OK']
    });
    alert.present();
  }

  initializeApp() {
    this.platform.ready().then(() => {
      // Okay, so the platform is ready and our plugins are available.
      // Here you can do any higher level native things you might need.
      let disconnectSubscription = Network.onDisconnect().subscribe(() => {
        this.showAlert("Error", "No internet connection");
      });
      StatusBar.styleDefault();
    });
  }
Run Code Online (Sandbox Code Playgroud)

我面临的问题是,如果应用程序与Internet断开连接,警报会显示两次.我在这篇文章中发现了类似的问题,但没有得到答复.任何有关这方面的帮助将不胜感激.提前致谢 !

cordova typescript ionic2 ionic3 angular

4
推荐指数
1
解决办法
2996
查看次数