Búsqueda de sitios web

node.js - ¿cómo devolvería mi objeto desde el almacenamiento de Ionic?


Estoy trabajando en la actualización del proyecto en la que la página dashboard tiene más de 3,000 líneas de código.

quiero persistir el trabajo anterior

así que quiero convertir esta función

  returnUserDetails(){
       var userDetails = JSON.parse(localStorage.getItem("userData"));

       return userDetails ;      
     }

a este pero dando error de valor de retorno undefined

 returnUserDetails(){
    var userData;
    this.storage.get('userData').then((val) => {
         userData = JSON.parse(val);  
     });

   return userData; 
 }

Pregunta: no puedo usar una variable global ya que esta función se usa tantas veces. ¿Cómo puedo devolver el valor correctamente?

Respuesta #1

Puedes simplemente devolver la promesa

 returnUserDetails(){   
    return  this.storage.get('userData').then((val) => {
          let userData = JSON.parse(val); 
          return userData;
     });
 }

Respuesta #2

Dado que estás tratando con el método Async, necesitas hacerlo como se muestra a continuación.

returnUserDetails(): Promise<any> {        
    return this.storage.get('userData').then((val) => {
         return val;  
     });      
 }