我有fieldObj件我经常需要的东西.它来自数据库.

下面是我编写的代码,如果localStorage没有,它可以从数据库中获取fieldObj.

当我试图访问存储在localStorage中的json数据时,它只会显示

[对象]

代码将fieldObj个本地存储视为字符串.

我需要访问存储在fieldObj中的键值对.

<script>
export default {
  data() {
    return {
      fields: JSON,
    }
  },
  created() {
    if (!localStorage.getItem('field-obj')) {
      axios
        .get('/api/u/record/', {
          withCredentials: true,
        })
        .then((response) => {
          response.data.forEach((el) => {
            if (el.COLUMN_TYPE == 'int') el.COLUMN_TYPE = 'number'
          })
          const fieldObj = response.data[0].fieldObj[0]
          this.fields = fieldObj
        })
        .then(() => {
          localStorage.setItem('field-obj', this.fields)
        })
    } else {
      console.log(new Object(localStorage.getItem('field-obj')))
      // console.log(localStorage.getItem('field-obj')[0].username)
    }
  },
}
</script>

推荐答案

像这样在本地存储中设置它

localStorage.setItem('field-obj',JSON.stringify(this.fields))

用这个访问它解决了这个问题

this.fields = JSON.parse(localStorage.getItem('field-obj'))

更复杂的例子可能是found here,使用Nuxt.

Javascript相关问答推荐

为什么我的includes声明需要整个字符串?

单击子元素时关闭父元素(JS)

togglePopover()不打开但不关闭原生HTML popover'

点击按钮一次有文本出现和褪色,而不是点击两次?(html,CSS,JavaScript)

给定一个凸多边形作为一组边,如何根据到最近边的距离填充里面的区域

如何从Intl.DateTimeFormat中仅获取时区名称?

并不是所有的iframe都被更换

使用领域Web SDK的Vite+Vue应用程序中的Web程序集(WASM)错误

邮箱密码重置链接不适用于已部署的React应用程序

Vaadin定制组件-保持对javascrip变量的访问

使用线性插值法旋转直线以查看鼠标会导致 skip

我为什么要使用回调而不是等待?

如何使用puppeteer操作所有选项

我怎样才能点击一个元素,并获得一个与 puppeteer 师导航页面的URL?

在Java脚本中构建接口的对象

我如何才能让p5.js在不使用实例模式的情况下工作?

Select 所有输入.值

Reaction:从子组件调用父组件中的函数

如何使用Reaction/Redux创建购物车逻辑?

Qualtrics联合实验脚本随机化条件