ルートが変更されたときに新しい小道具を渡す方法は? 私はルートに依存する変更クラスが必要です。react router onChange
export class Routes extends React.Component<any, any> {
constructor(props:any){
super(props);
}
handleChange = (prevState, nextState, replaceState) => {
console.log(nextState.location.pathname);
};
render(){
return(
<Router {...this.props}>
<Route path="/" onChange={this.handleChange} component={Miramir}>
<Route path="/about">
<IndexRoute component={Miramir}></IndexRoute>
</Route>
<Route path="/contact">
<IndexRoute component={Miramir}></IndexRoute>
</Route>
<Route path="/profile">
<IndexRoute component={Profile} />
<Route path="/profile/update" component={ProfileUpdate} />
<Route path="/profile/login" component={LogInPage} />
</Route>
</Route>
</Router>
)
}
}
私はMiramirコンポーネントで小道具を取得し、例えばlocation.pathname
をチェックしようとしている:私のルートで/私は、ヘッダークラスhome-page
をしたいと/プロファイルのルート上にはprofile-page
クラスをしたいです。 しかし、私がルートを変更するときlocation.pathname
は/
ルートを持っています
アップデート小道具をチェックするには?
私はルートが変更されるときは、onEnter
フックを提供することができ、私のMiramirコンポーネント
わからない、これはあなたを助けることができるかどうbrowserHistory.listen(所在地=> {//ここに自分のものを行います});ここでパスに基づいてあなたのコードを行うことができます –