我应该用什么代替路由器中的 onEnter 和 onChange?
What should I use in place of onEnter and onChange in router?
我正在学习一个有点旧的教程,但我正在使用 "react-router": "^5.0.0" 我认为它现在不支持 onEnter 和 OnChange。那么我应该在保持相同功能的同时使用什么。
export const globalOnChange = (prevState, nextState) => {
globalOnEnter(nextState);
};
export const globalOnEnter = (nextState) => {
const lastRoute = nextState.routes[nextState.routes.length - 1];
Session.set('currentPagePrivacy', lastRoute.privacy);
console.log('lastRoute',lastRoute);
};
export const routes = (
<Router history = {browserHistory1}>
<Route onEnter={globalOnEnter} onChange={globalOnChange}>
<Switch>
<Route exact path = "/" component={Login} privacy="unauth"/>
<Route exact path = "/signup" component={Signup} privacy="unauth"/>
<Route exact path = "/dashboard" component={Dashboard} privacy="auth"/>
<Route exact path = "/test" component={Test} privacy="auth" onEnter={onEntertESTPage}/>
<Route component={NotFound}/>
</Switch>
</Route>
</Router>
);
onEnter
在 react-router-4
上不再存在。对于 v4,您应该使用由 .您可以使用 componentDidMount
.
而不是 onEnter
所以我也建议 setting/checking 组件本身而不是路由器中的隐私规则。
我正在学习一个有点旧的教程,但我正在使用 "react-router": "^5.0.0" 我认为它现在不支持 onEnter 和 OnChange。那么我应该在保持相同功能的同时使用什么。
export const globalOnChange = (prevState, nextState) => {
globalOnEnter(nextState);
};
export const globalOnEnter = (nextState) => {
const lastRoute = nextState.routes[nextState.routes.length - 1];
Session.set('currentPagePrivacy', lastRoute.privacy);
console.log('lastRoute',lastRoute);
};
export const routes = (
<Router history = {browserHistory1}>
<Route onEnter={globalOnEnter} onChange={globalOnChange}>
<Switch>
<Route exact path = "/" component={Login} privacy="unauth"/>
<Route exact path = "/signup" component={Signup} privacy="unauth"/>
<Route exact path = "/dashboard" component={Dashboard} privacy="auth"/>
<Route exact path = "/test" component={Test} privacy="auth" onEnter={onEntertESTPage}/>
<Route component={NotFound}/>
</Switch>
</Route>
</Router>
);
onEnter
在 react-router-4
上不再存在。对于 v4,您应该使用由 .您可以使用 componentDidMount
.
onEnter
所以我也建议 setting/checking 组件本身而不是路由器中的隐私规则。