ホームページ >ウェブフロントエンド >jsチュートリアル >React Router 4 で認証を実装するにはどうすればよいですか?
React Router 4 では、認証されたルートを実装するには、以前のバージョンとは異なるアプローチが必要です。
この問題に対処するには、カスタムの
<code class="javascript">import React, {PropTypes} from "react"; import { Route } from "react-router-dom"; export default class AuthenticatedRoute extends React.Component { render() { if (!this.props.isLoggedIn) { this.props.redirectToLogin(); return null; } return <route></route>; } } AuthenticatedRoute.propTypes = { isLoggedIn: PropTypes.bool.isRequired, component: PropTypes.element, redirectToLogin: PropTypes.func.isRequired, };</code>
このコンポーネントは、ユーザーがログインしているかどうかを確認し、ログインしていない場合はログイン ページにリダイレクトします。ユーザーがログインしている場合は、通常どおりルートが表示されます。
もう 1 つのアプローチは、
<code class="javascript">function PrivateRoute({ component: Component, authed, ...rest }) { return ( <route render="{(props)"> authed === true ? ( <component></component> ) : ( <redirect to="{{" pathname: state: from: props.location></redirect> ) } /> ); }</route></code>
This
これらの認証手法を実装することで、React Router 4 のルートを効果的に保護し、承認されたユーザーのみがアプリケーションの特定の部分にアクセスできるようにすることができます。
以上がReact Router 4 で認証を実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。