2016-07-06 8 views
0

私はこのサービスを私のアプリに持っています。 localstorageにユーザを設定して取得するサービス。しかし、getUser関数は自分のオブジェクトではなくJSON.parse関数を返していました。AngularJSローカルストレージサービス間違った返品

誰でもこのinsueを解決する方法を知っていますか?

コードはここにある:私は以下のようなlocalStorage.get /設定項目のメソッドを使用し

.service('UserService', function() { 
    // For the purpose of this example I will store user data on ionic local storage but you should save it on a database 
    var setUser = function(user_data) { 
    window.localStorage.extract = JSON.stringify(user_data); 
    }; 

    var getUser = function(){ 
     console.log(JSON.parse(window.localStorage.user || '{}')); 
    return JSON.parse(window.localStorage.user || '{}'); 
    }; 

    var clearUser = function(){ 
     delete window.localStorage.user;  
    }; 

    return { 
    getUser: getUser, 
    setUser: setUser, 
    clearUser: clearUser 
    }; 
}) 

おかげ

答えて

0

。だから、あなたのサービスは、私は同じ結果を持っていた

.service('UserService', function() { 

    var getUser = function(){ 
    return JSON.parse(window.localStorage.getItem('user')); 
    }; 


    var setUser = function(user){ 
    JSON.stringify(window.localStorage.setItem('user', user)); 
    }; 

    return { 
    getUser: getUser, 
    setUser: setUser 
    }; 
}) 
+0

次のようになります。 getUser関数から返されたオブジェクトは、ローカルストアアイテムではありませんが、関数JSON.parseプロトタイプです。 –

関連する問題