Javascript 如何在react with redux中授权路由?
在这里,我希望只有loggedin用户能够打开配置文件路由。最好的方法是什么 main.jsJavascript 如何在react with redux中授权路由?,javascript,reactjs,redux,react-router,Javascript,Reactjs,Redux,React Router,在这里,我希望只有loggedin用户能够打开配置文件路由。最好的方法是什么 main.js let store = createStore(todoApp, applyMiddleware(thunkMiddleware)); render( <Provider store={store}> <Router history={browserHistory}> <div className="container"&
let store = createStore(todoApp, applyMiddleware(thunkMiddleware));
render(
<Provider store={store}>
<Router history={browserHistory}>
<div className="container">
<Route exact path="/" component={Login}/>
<Route path="/profile" component={Profile} />
</div>
</Router>
</Provider>,
document.getElementById('root')
)
let store=createStore(todoApp、applyMiddleware(thunk中间件));
渲染(
,
document.getElementById('root'))
)
您可以执行以下操作:
<Route path="/profile" component={RequiresAuth(Profile)} />
并创建一个身份验证功能,如:
function RequiresAuth(ComposedComponent) {
class Authenticate extends Component {
render() {
if (!userAuthenticated) { // Check if user is authenticated
return null;
} else {
return (
<ComposedComponent {...this.props} />
);
}
}
}
}
功能要求授权(ComposedComponent){
类身份验证扩展组件{
render(){
如果(!userAuthenticated){//检查用户是否经过身份验证
返回null;
}否则{
返回(
);
}
}
}
}
您可以执行以下操作:
<Route path="/profile" component={RequiresAuth(Profile)} />
并创建一个身份验证功能,如:
function RequiresAuth(ComposedComponent) {
class Authenticate extends Component {
render() {
if (!userAuthenticated) { // Check if user is authenticated
return null;
} else {
return (
<ComposedComponent {...this.props} />
);
}
}
}
}
功能要求授权(ComposedComponent){
类身份验证扩展组件{
render(){
如果(!userAuthenticated){//检查用户是否经过身份验证
返回null;
}否则{
返回(
);
}
}
}
}