その名前が示すように、vue-router
ナビゲーション・ガードは主に設けられた貫通ジャンプやガード・ナビゲーションをキャンセルするために使用します。
グローバル、単一のルート、またはコンポーネントレベルの排他的:何度かチャンスナビゲーション中のインプラントのルートがあります。
ナビゲーション/左ガードにトリガされませんパラメータやクエリを変更することを忘れないでください。あなたは観察することができ $route
、オブジェクトを
これらの変更、またはの使用に対応するため beforeRouteUpdate
のアセンブリでガード。
const router = new VueRouter({ ... }) router.beforeEach((to, from, next) => { // ... })
ナビゲーションがトリガされたときにグローバルフロントガードは、作成順に呼び出します。ガードを分析し、非同期で実行され、今回のナビゲーションは、すべてのガードが完全に解決されるまで待機してきました。
それぞれの方法には、3つの警備員のパラメータを受け取ります。
-
to: Route
:ターゲット入ろうとして ルートオブジェクトを -
from: Route
:私は、現在のナビゲーションルートを残すことを約ありました -
next: Function
:このフックを解決するために、このメソッドを呼び出してください。結果の実装は依存next
呼び出しパラメータ方法。
グローバルナビゲーションガードの例:
メタ:{
AUTH:真
}
//コンポーネントがログインする必要がありますことは事実であります
localStorage、localStorage.getItem(「ユーザ」)が格納され成功したログインユーザ情報は、ユーザがスキップ、次のステップを決定します
存在しないページへのログインログインするためにジャンプ