Javascript Angular.JS 404页单页应用程序
有人能告诉我如何在angularJS中为单页应用程序制作“404-page not found”教程的正确方向吗 或者更好地解释如何实现这一点Javascript Angular.JS 404页单页应用程序,javascript,angularjs,Javascript,Angularjs,有人能告诉我如何在angularJS中为单页应用程序制作“404-page not found”教程的正确方向吗 或者更好地解释如何实现这一点 互联网上似乎没有太多关于这方面的信息 在使用本机路由器的Angular SPA中,如果未找到路由,它将命中$routeProvider.others()方法,从而加载一个路由视图,如果从服务器交付,该路由通常为404'ed angular.app('application', ['ngRoute']) .config(['$routeProvid
互联网上似乎没有太多关于这方面的信息 在使用本机路由器的Angular SPA中,如果未找到路由,它将命中
$routeProvider.others()
方法,从而加载一个路由视图,如果从服务器交付,该路由通常为404'ed
angular.app('application', ['ngRoute'])
.config(['$routeProvider', function($routeProvider) {
// If route is not configured go to 404 route
$routeProvider.otherwise('/404');
$routeProvider.when('404', { /* route configuration */ });
});
这里唯一的缺点是URL pushstate也会更改,但是如果服务器重定向到自定义404,通常会发生这种情况。我不会将其视为404页面
angular.app('application', ['ngRoute'])
.config(['$routeProvider', function($routeProvider) {
// If route is not configured go to 404 route
$routeProvider.otherwise('/404');
$routeProvider.when('404', { /* route configuration */ });
});
在您的SPA(单页应用程序)中,您可以进行多个API调用,独立地更新仪表板上的小部件,其中10个中有9个成功(200个),一个失败(404个),在这种情况下,您不想重定向用户
正如大卫·巴克(David Barker)所说,你有一个,否则这是一个包罗万象的页面
app.config(['$routeProvider',
function($routeProvider) {
$routeProvider.
when('/login', {
templateUrl: 'login.template.html',
controller: 'LoginController'
}).
when('/', {
templateUrl: 'dashboard.template.html',
controller: 'DashboardController'
}).
otherwise({
redirectTo: '/'
});
}]);
因此,如果用户输入的路线不正确,则转到仪表板,唯一的问题是反馈:
1:您需要一个消息传递服务来反馈实际的API 404有错误响应,并且可以使用拦截器、指令和模型进行管理
2:您可以使用run方法以及查找$routeChangeError的相同指令和模型反馈错误消息,然后添加错误消息
我希望这会有所帮助。您使用的路由器和Angular的版本是什么?使用route系统重定向到404页面您是说route not found还是template not found?templateURL not found NikhilI我使用的是AngularJS v1.3.15,因此如果templateURL未找到并返回404错误,此脚本将重定向到404页面No,不是那样的。如果找不到templateUrl,则会出现错误。理论上,您可以捕获该错误并重定向到404。你能发布你的模板加载代码吗?