我试图通过从一些分散的文件中合并它们来动态加载一堆状态。
我用 $http.get 收集所有这些,然后用$stateProvider.state(name, config)添加所有这些。
这里一切正常。
问题是如果我输入另一个 URL,除了根 URL“/”之外,相同的 URL 永远不会被解析为正确的状态。
看来,如果我从根状态加载应用程序并从那里导航,$urlRouterProvider 可以匹配所有加载的状态,但是,如果我尝试从子状态进入应用程序,例如“/#/anotherpage ",它不能匹配任何 url/state 并且它回退到 .otherwise('/')。
就像它尝试解析 URL 而不等待加载所有状态一样。
我正在使用$urlRouterProvider.deferIntercept()尝试阻止它继续,并且在配置之后,我只是再次启用同步。
app.config(configure).run(['$urlRouter', function($urlRouter){
$urlRouter.sync();
$urlRouter.listen();
}]);
如何确保$urlRouterProvider等到在.config()期间加载所有状态,然后尝试匹配正确的状态?
谢谢。