2017-07-31 4 views
0

J'ai utilisé promis en angulaire2 mais mon exigence a été faite par la méthode observable.Comment convertir promesse en angulaire2 observable?

Component.ts: -

constructor(private MenuService:MenuService, private router: Router) { 
    this.getMenuPermissions().then(() => this.menuList = this.router.config); 
    } 

    ngOnInit() { } 

    getMenuPermissions(){ 
    let promise = new Promise((resolve, reject) => { 
     this.MenuService.getMenuPermission() 
     .subscribe(res => {this.apiResponse = res}, 
        err => reject(), 
        () => this.response(this.apiResponse, resolve) 
       ); 
    }); 
    return promise; 
    } 

    response(response, resolve) 
    { 
    if(response.api_status == 1) 
    { 
     this.menuPermissions = response.data; 
     return resolve(); 
    } 
    } 

Mon exigence générale est: - Appelez le service en premier lieu et l'appel de la fonction HTML. L'utilisation de la méthode de la promesse est faite mais effectuée par la méthode observable. Je n'ai aucune idée de comment faire? Veuillez convertir ce code dans la méthode observable.

Répondre

0

Vous pouvez faire comme ça,

Observable.fromPromise(funcReturnsPromise()) 
+0

type d'importation de fichier. veuillez expliquer en détail –

+0

import import {Observable} de 'rxjs/Observable'; – jaseelmp

+0

Je peux comprendre. S'il vous plaît écrire un code dans les détails. Parce que j'ai écrit un code dans ma question, merci de convertir tout le code. –