相关疑难解决方法(0)

如何处理AngularJS路由找不到的资源

在传统的数据驱动的Web应用程序中,我们经常尝试根据URL中传递的ID加载资源.如果资源不存在,我们返回404页面.

我们应该如何在AngularJS中实现同样的目标?我已经按照AngularJS电话目录教程进行操作,如果资源不存在,我目前正在执行以下操作(注意这使用了Angular $resource服务):

controllers.controller('PhoneDetailCtrl', ['$scope', '$routeParams', '$location', 'Phone',
  function($scope, $routeParams, $location, Phone) {

    $scope.phone = Phone.get({ phoneId: $routeParams.phoneId }, 
      function(phone) {
        $scope.mainImageUrl = phone.images[0];
      },
      function(response) {
        if (response.status === 404) {
          $location.path('/404'); // show phone not found page
        }
      });
}]);
Run Code Online (Sandbox Code Playgroud)

这是推荐的方法吗?考虑到我需要在几乎所有资源上执行此操作,我想知道它是否会更好地处理$routeProvider

javascript angularjs

5
推荐指数
1
解决办法
9285
查看次数

标签 统计

angularjs ×1

javascript ×1