离子本地存储删除项目

时间:2015-05-19 02:32:25

标签: javascript ionic-framework

有人可以帮我创建一种从离子本地存储中删除的方法吗?

到目前为止,我已经尝试了

    set: function(key, value) {
      $window.localStorage[key] = value;
    },
    get: function(key) {
      return $window.localStorage[key];
    },
    setObject: function(key, value) {
      $window.localStorage[key] = JSON.stringify(value);
    },
    getObject: function(key) {
      return JSON.parse($window.localStorage[key]);
    },
    removeItem: function(key){
      $window.localstorage.splice(key, 1);
    }

removeItem根本不起作用。我希望通过职位而不是按键删除。

3 个答案:

答案 0 :(得分:5)

您正在使用localStorage作为数组,而不是。它具有删除项目的默认功能:

removeItem: function(key){
    $window.localStorage.removeItem(key);
}

如果您想通过索引删除,则必须先获取该项目:

removeByIndex: function (index) {
    $window.localStorage.removeItem($window.localStorage.key(index));
}

答案 1 :(得分:0)

尝试使用内置方法,这有助于完成从key:value

中删除LocalStorage的整个交易

https://auth0.com/docs/native-platforms/ionic#8

答案 2 :(得分:0)

这将是最好的方式。使用此工厂,您可以创建,检索或删除任何创建的密钥

.factory('sessionService',['$http',function($http){
  return {
     set:function(key,value){
     return localStorage.setItem(key,JSON.stringify(value));
   },
   get:function(key){
     return JSON.parse(localStorage.getItem(key));
   },
   destroy:function(key){
     return localStorage.removeItem(key);
   },
 };
}])