如果无法使用ngRoute
加载模板,我希望能够显示标准错误页面或模板。
我已经读过订阅$routeChangeError
可以帮助但不确定从这里开始。
$rootScope.$on("$routeChangeError", function (event, current, previous, rejection){
// somehow tell the routing engine to load my error page (404 or 500 or something)
});
此外,这可以在全球范围内完成,还是必须在每个控制器的基础上完成。目前我的网站不是完全SPA,它有"筒仓" SPA /路由,因为我慢慢将网站从jQuery转换为Angular。
答案 0 :(得分:0)
您可能希望在遇到错误时重定向您的用户。通过使用您的代码:
$rootScope.$on("$routeChangeError", function (event, current, previous, rejection){
$location.url('/error');
});
然后在你的$ routeProvider(也许是$ stateProvider,取决于你使用的是什么),做类似下面的事情
$routeProvider
.when('/error', {
templateUrl: 'error.html',
controller: 'YourErrorController'
})