信息谷 - ICITU

标题: umi+react开发中,使用history.push中的state传参,接收参数的页... [打印本页]

作者: sxadmin    时间: 2024-8-6 15:16
标题: umi+react开发中,使用history.push中的state传参,接收参数的页...
问题描述:在开发过程中,使用history.push中的state传参,页面中使用props.location.state接收参数,在开发环境中,没有问题,当在服务器端部署上线时,发现在页面中使用state接收的参数,在浏览器刷新之后丢失,导致页面报错

  history.push({
            pathname: '/projectFile',
            state: {
              id: res?.data?.project?.id,
              projectName: projectInputValue,
            },
          });
解决办法:在页面跳转拿到参数之后,将参数保存到sessionStorage中,浏览器在后续拿数据从sessionStorage中获取,完美解决

  let urlData: any;
  if (props.location.state) {
    urlData = props.location.state;
    sessionStorage.setItem('urlData', JSON.stringify(urlData));
  } else {
    urlData = JSON.parse(sessionStorage.getItem('urlData')); }

————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/znhyXYG/article/details/129661754






欢迎光临 信息谷 - ICITU (https://icitu.com/) Powered by Discuz! X3.4