いくつかの分散ファイルからそれらをマージすることにより、一連の状態を動的にロードしようとしています。
$http.getでそれらすべてを収集し、 $stateProvider.state(name, config) ですべて追加します。
ここで大丈夫です。
問題は、ルート URL "/" 以外の別の URL を入力すると、同じ URL が正しい状態に解決されないことです。
ルート状態からアプリをロードしてそこから移動すると、$urlRouterProvider はロードされたすべての状態と一致するようですが、子状態からアプリに入ろうとすると、たとえば "/#/anotherpage "、どの URL/状態とも一致できず、.otherwise('/')にフォールバックします。
すべての状態が読み込まれるのを待たずに URL を解決しようとするようなものです。
$urlRouterProvider.deferIntercept()を使用して続行を停止しようとしています。構成後、同期を再度有効にします。
app.config(configure).run(['$urlRouter', function($urlRouter){
$urlRouter.sync();
$urlRouter.listen();
}]);
$urlRouterProviderが.config()中にすべての状態が読み込まれるまで待機し、正しい状態に一致するようにするにはどうすればよいですか?
ありがとう。