2016-06-15 14 views
0

私は取得リクエストをしようとしていますが、何とかバックエンドから約束を記録できません。私は間違って何をしていますか?約束を解決できません

makeLoginCall(_username: string, _password: string) { 
    let promise = new Promise((resolve, reject) => { 
     this.http.get('xxx').subscribe(data => {  
     }); 
    }); 
    return promise; 
    } 

    login() { 
    this.userService.makeLoginCall(this.formLogin.value.username, this.formLogin.value.password) 
    .then(response => { 
     console.log(response); 
    }, 
    (response) => { 
     if (response.status < 500) { 
     console.warn('Login failed!'); 
     } else { 
     console.error('Internal Server Error'); 
     } 
    }); 
    } 
+2

のErr、あなたは(どちらも決意を()を呼び出すことも、拒否しません)。 –

答えて

3

あなたが応答を受信したときに基礎となる.then機能は、すぐにそれが解決されるコールを取得するように、Promiseを解決する必要があります。

コード

makeLoginCall(_username: string, _password: string) { 
    let promise = new Promise((resolve, reject) => { 
     this.http.get('xxx').subscribe(data => { 
      resolve(data); //resolve promise here 
     }); 
    }); 
    return promise; 
} 
関連する問題