ボタンの onSubmit など、一部のユーザー アクションに対してナビゲーションを実行したいと考えています。ユーザーが「連絡先の追加」ボタンをクリックしたと仮定して、react-router がホームページ「/」でリダイレクトするようにします。現在、私はこの問題に直面しています --> TypeError: Cannot readproperties of unknown (reading 'push'). 初心者として、専門家の助けを本当に感謝しています。
AddContacts.js
リーリーこれは App.js ファイルです
リーリーP粉3842444732023-10-31 13:19:10
###質問###
プロパティから移動しようとしているためです。
リーリー
フックは関数コンポーネントとのみ互換性があるため、クラス コンポーネントで navigate
を使用する必要がある場合は、AddContacts
を次のように変換する必要があります。関数コンポーネント、または独自のカスタム withRouter code> 高次コンポーネントをロールして、
react-router- の
withRouter HOC
クラスコンポーネントを関数コンポーネントに変換する方法は紹介しません。カスタム v5 などの「ルート プロパティ」を挿入します。 dom.xはやりました。
###解決###
そして、AddContacts
コンポーネントを新しい HOC で装飾します。
navigate
プロパティ (および設定した他のプロパティ
this.navigate が定義されます。
さらに、ナビゲーション API は v5 から v6 に変更され、直接の history
オブジェクトは使用されなくなりました。
はオブジェクトではなく関数です。使用するには、関数を呼び出して 1 つまたは 2 つの引数を渡します。最初の引数はターゲット パスで、2 つ目は replace
キーや state
キーを使用したオプションの「オプション」です。価値。
これで、ナビゲーションは次のようになります:
リーリー