繁体   English   中英

React Router 受保护的路由

[英]React Router protected routes

我正在学习 React Router(准确地说是受保护的路由),并且在 React Router 文档中有一个 function 我几乎可以理解,但是有一行代码我看不到它是如何工作的。 也许有人可以简短地描述那条线的作用。 下面是来自https://reactrouter.com/web/example/auth-workflow 的 function

function LoginPage() {
  let history = useHistory();
  let location = useLocation();

  let { from } = location.state || { from: { pathname: "/" } };
  let login = () => {
    fakeAuth.authenticate(() => {
        history.replace(from);
    });
  }; 

这条线有什么作用?

let { from } = location.state || { from: { pathname: "/" } };

我知道我们正在创建一个 object 但是什么|| 做? 是否将两个对象合二为一? 我不明白。

|| 是逻辑 OR 运算符

let { from } = location.state || { from: { pathname: "/" } };

这就是说,如果location.state不是 null 或未定义,则将location.state.from分配给变量from ,否则分配{ pathname: "/" }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM