在这里,我希望只有登录用户才能打开配置文件路由。最好的方法是什么?
main.js
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')
)
答案 0 :(得分:0)
你可以这样做:
<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} />
);
}
}
}
}