weixin_41452476 2024-09-09 16:54 采纳率: 27.9%
浏览 12
已结题

sessionStorage在vue中的用法

为什么在vue2的路由文件中,通过sessionStorage.getItem获取值,拿不到值,值为null,怎么解决


 {
        path: '/api/detail/' + sessionStorage.getItem('ICE_MODEL'),
        name: 'apiDetail',
        component: () => import('@/views/api/devproject/DevProjectDetail'),
        redirect: '/api/devproject/detail/ProjectOverviewPage/' + sessionStorage.getItem('ICE_MODEL'),
        meta: {
          title: '项目概况',
          keepAlive: false,
          hiddenHeaderContent: true
        },
      },
  • 写回答

32条回答 默认 最新

  • 阿里嘎多学长 2024-09-09 16:54
    关注
    获得0.15元问题酬金

    AIGC生成:


    sessionStorage 在 Vue 中的用法

    你遇到的问题是,在 Vue 2 的路由文件中,使用 sessionStorage.getItem 获取值时,拿不到值,值为 null。下面是解决方案:

    首先,需要注意的是,sessionStorage 是浏览器的本地存储,存储的数据会在浏览器关闭时被清除。Vue 2 的路由文件是运行在浏览器中的 JavaScript 代码,因此可以使用 sessionStorage

    问题可能出在以下几个方面:

    1. sessionStorage 只能在同一个域名下存储数据,如果你的路由文件在不同的域名下,可能无法获取存储的数据。
    2. sessionStorage 只能在同一个浏览器窗口下存储数据,如果你在不同的浏览器窗口下访问路由文件,可能无法获取存储的数据。
    3. sessionStorage 的存储数据是字符串,如果你存储的是对象或数组,可能需要使用 JSON.stringify() 将其转换为字符串。

    解决方案:

    1. 在路由文件中,使用 sessionStorage 存储数据时,确保在同一个域名下。
    2. 在路由文件中,使用 sessionStorage 存储数据时,确保在同一个浏览器窗口下。
    3. 在路由文件中,使用 sessionStorage 存储数据时,使用 JSON.stringify() 将对象或数组转换为字符串。

    示例代码:

    // 在路由文件中,存储数据
    sessionStorage.setItem('key', JSON.stringify({ foo: 'bar' }));
    
    // 在路由文件中,获取存储的数据
    const data = JSON.parse(sessionStorage.getItem('key'));
    console.log(data); // { foo: 'bar' }
    

    如果你仍然遇到问题,可以提供更多的代码和信息,我将尽力帮助你解决问题。

    评论

报告相同问题?

问题事件

  • 系统已结题 9月17日
  • 创建了问题 9月9日

悬赏问题

  • ¥15 如何构建全国统一的物流管理平台?
  • ¥100 ijkplayer使用AndroidStudio/CMake编译,如何支持 rtsp 直播流?
  • ¥20 和学习数据的传参方式,选择正确的传参方式有关
  • ¥15 这是网络安全里面的poem code
  • ¥15 用js遍历数据并对非空元素添加css样式
  • ¥15 使用autodl云训练,希望有直接运行的代码(关键词-数据集)
  • ¥50 python写segy数据出错
  • ¥20 关于线性结构的问题:希望能从头到尾完整地帮我改一下,困扰我很久了
  • ¥30 3D多模态医疗数据集-视觉问答
  • ¥20 设计一个二极管稳压值检测电路