我是 Angular 的新手,因为我通常构建相当大的应用程序,所以我开始创建一个延迟加载的导航。一切工作得很好,我能够使用 AngularUI Router、UI-Router Extras 和 ocLazyLoad 延迟加载模块和状态。
这是我的代码的简化版本:http://plnkr.co/edit/BXyvzy?p=info .
我唯一的问题是使用 UI-Router Extras 的 Futures States 定义 404 页面。当我尝试请求一个不存在或不处于任何 future 状态的状态时,应用程序会默默地重定向到“/”。据我在源代码中看到的负责此操作的代码是:
function otherwiseFunc($state) {
$log.debug("Unable to map " + $location.path());
$location.url("/");
}];
此函数作为另一个函数 futureState_otherwise
的一部分进行调用,该函数被声明为 $urlRouterProvider
的 other 函数。
$urlRouterProvider.otherwise(futureState_otherwise);
如何正确处理 UI-Router Extras 未找到的状态和 future 状态?我应该为 $urlRouterProvider.otherwise
重写一个新函数还是有更好的方法?
提前致谢!
最佳答案
我在 ui-router-extras Github 页面上创建了一个拉取请求,提出了一个解决方案,并且它已合并到项目中。所以这个问题将在新版本中得到解决。
https://github.com/christopherthielen/ui-router-extras/pull/77
关于javascript - 未找到状态时 UI-Router Extras 和 future 状态的 404 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26087066/