反応を使用してWebアプリケーションを作成していますが、現在はページを移動するときに問題が発生しています。以下は詳細な説明です。誰かが私を助けてくれることを願っている。反応を使用するとURLルーティングの問題が発生する
最後に私は
:
:
import {BrowserRouter as Router, Route, Switch, Redirect} from 'react-router-dom'
:
<Route path={"/tasks/:type/"} component={Tasks} />
を次のように私のコンポーネント(タスク)は、この(simplyfied)
class Tasks extends Component {
constructor(props) {
super(props);
this.type = props.match.params.type;
}
render(){
return (<h1>{this.type} </h1>);
}
}
のようなもので、私は反応し-ルータ-DOMを使用して別々のコンポーネントからルーティングを行いますURLを次のように設定してナビゲーションメニューの1つからこのルーティングコンポーネントを呼び出します。
この実装では、(ナビゲーションメニューから)1つのURLを選択すると、期待通りに機能しません。 1つを選択してからもう一方を選択すると、期待通りにナビゲートされません。ブラウザにURLを入力するかページを更新すると、正しいページ(他のURL)に転送されます。 D:
は、私は私の質問を明らかにしたホープ。この問題を解決する方法について、正しい方向で私を導いてくれますか?
おかげ
私は 'BrowserRouter'の代わりに' HashRouter'を試してみましょう。期待通りに開発プロセスを単純化します。あなたのアプリを開発したら、 'BrowserRouter'に再度ファクタリングすることができます。 –
'リターン(
{} this.type
);' - 'props.type'変更された場合、これは@DimitarChristoffが言うエコーコンストラクタ –であなただけの同期をと更新されません。あなたが持っているものに基づいてクラスを全く使う必要はありません。 – azium