【问题标题】:JavaScript/Angular2 LocalStorage can get anythingJavaScript/Angular2 LocalStorage 可以得到任何东西
【发布时间】:2016-09-10 18:49:03
【问题描述】:

我正在开发一个 Ionic2 应用程序并将一个数组存储在本地存储中,如下所示:

键 |价值 选项 | [选项1,选项2,选项3]

我正在尝试使用以下方法获取options 密钥:

  constructor(nav) {
      this.nav = nav;
      this.local = new Storage(LocalStorage);
      this.optionsArray = this.local.get('options');
      console.log('content of array : '+JSON.stringify(this.optionsArray));
    }

我在控制台中得到了什么:

数组内容:{}

这是我在前几页中设置数组的方式:

 this.optionsArray = ['option1','option2','option3'];
 localStorage.setItem('options', this.optionsArray);

你知道为什么我得到一个空值吗?

【问题讨论】:

标签: javascript angular ionic2


【解决方案1】:

setItem 不是LocalStorage 的成员,您在使用它时一定会遇到错误。正确的函数是set(key,value),在你的情况下是localStorage.set('options',this.optionsArray)

带有示例的文档在这里:http://ionicframework.com/docs/v2/api/platform/storage/LocalStorage/

【讨论】:

  • 已经试过了,我用set(key,value)而不是setItem,它不起作用(即我点击它并没有移动到下一页)
  • 那么您一定会在日志中收到错误消息或堆栈跟踪。你能发帖吗?您还应该共享整个 js 文件。
  • 文档是关于 Ionic 自己的Storage() API,而不是 localStorage。 localStorage.setItem()是直接访问localStorage的正确方法。问题在于 获取 值,而不是设置它们(参见副本)。
猜你喜欢
  • 2019-09-25
  • 1970-01-01
  • 1970-01-01
  • 2018-05-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-20
  • 2016-03-04
相关资源
最近更新 更多