我正在使用我的 Rails Api(DoorKeeper/Devise)上的用戶身份驗證制作我的第一個反應應用程序。我設置了expires_at反應local_storage并嘗試在私有路由組件中進行驗證。在這種情況下,我想驗證用戶令牌以讓他訪問路由“/”。我無法聯系到 userSignedIn。如何從 PrivateRoute 組件訪問此功能?// PrivateRoute.jsimport React from 'react';import { Route, Redirect } from 'react-router-dom'import userSignedIn from '../auth'const PrivateRoute = ({ component: Component, ...rest }) => ( <Route {...rest} render={(props) => ( userSignedIn === true ? <Component {...props} /> : <Redirect to={{ pathname: '/login', state: { from: props.location } }} /> )} />)export default PrivateRoute;// auth.jsconst userSignedIn = () => { if (localStorage.getItem('expires_at') !== null) { return new Date() < new Date(localStorage.getItem('expires_at')) } else { return false }}export default userSignedIn;謝謝
檢查用戶是否在 PrivateRoute 組件 React 上登錄
開心每一天1111
2021-11-04 15:35:29