2

私はこれに対する答えを探していましたが、これを解決して解決する方法について明確で明確な答えはありません。

私のanguarJSアプリでは、AngularJSがロード/ブートストラップされた後の最初のことを確認したいと思い$httpます./api/settings/getサブドメインに応じて、および/または存在する場合に追加する必要がある設定データを取得する JWT またはその他のユーザー セッション$rootScopeです。

私の問題は、アプリを「停止」できず、設定が取得されて$rootScope. フェッチまたは設定の呼び出しが失敗する可能性がある場合、アプリは「停止」する必要があります。そのため、これらの設定を非常に早い段階でロードして、すべて (サービス、コントローラー、ディレクティブなど) がアクセスできるようにすることが重要です。

私は$broadcastイベントを試してみて、角度のある関数に入れました.runが、まだアプリを解決しているようです (おそらく非同期であるため)。

apiConnector.get('api/settings/get').then(function(settings) {
  $rootScope.settings = settings;
  $rootScope.$broadcast('settings-fetched');
});

ただし、私はこのアプローチが好きではなく、どこでもこのイベントをリッスンする必要があります。

私のルートは公開されており、制限されています。

誰かが私がこれをどのように解決するかについて正しい方向に私を助けてくれることを願っています.

4

1 に答える 1