如何在反应中重定向到主屏幕?

时间:2019-03-14 10:46:27

标签: reactjs react-router

请告诉我key is not found in local storage时如何重定向到主屏幕。 我在这里有一个演示应用程序

https://codesandbox.io/s/00q3588z1v

当我使用此网址“ / abc”和完整网址“ https://00q3588z1v.codesandbox.io/abc”运行应用程序时 它给我这个错误 无法读取null的属性“ toUpperCase”

因为该键中没有值。我需要将其重定向到/或重定向到Test组件

enter image description here

2 个答案:

答案 0 :(得分:0)

componentDidMount组件中的

Testa中的localStorage设置为"abc",但是用户在访问{{1 }},因此在使用字符串方法之前,您需要检查Test2的设置是否正确。

如果要重定向到a,则可以使用/道具渲染Redirect组件。

to

答案 1 :(得分:0)

我认为

您需要设置一个条件,如果localStorage中的值将使您返回到'/' 是空的

if (localStorage.getItem("a")) {
     return (
<div>
  test2
  {localStorage.getItem("a").toUpperCase()}
</div>
     )
} else {
    return <Redirect to="/" />
 }