問題タブ [angular-router-guards]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
6327 参照

angular - Angular - 異なるモジュール間でガードを提供する

基本的に、現時点では次の Angular モジュールがあります。

  1. landing
  2. admin
  3. core
  4. shared

私が望むのは、モジュールAuthenticationGuard内で呼び出される新しいガードを登録し、sharedそれをさまざまなモジュールに提供することです。

現時点では、(ブートストラップするものである)内にガードを登録した場合にのみ機能し、またはlanding-moduleに登録した場合は機能しません。admin.moduleshared.module

これを行うと、次のようなエラーが表示されます。

ここに画像の説明を入力

の登録は、対応するモジュールの配列をguard介して行われます。providers

私の目標は、すべてのモジュールで使用できるようにすることです。

モジュールcore内からサービスを注入しても問題はありませんでした。adminguardsservices

現在、関連するファイルの一部は次のようになっています (簡潔にするために短縮されています)。

着陸.モジュール.ts

着陸.ルーティング.モジュール

admin.module

admin.routing.module

共有モジュール

auth-guard.service