programing

동적 매개 변수를 사용하여 ui-module 확인

lastmoon 2023. 3. 13. 20:47
반응형

동적 매개 변수를 사용하여 ui-module 확인

이것은 아마 간단하지만 나는 문서에서 아무것도 찾을 수 없었고 구글 검색은 도움이 되지 않았다.상태를 정의하려고 합니다.$stateProvider필요한 데이터를 끌어오기 위해 서버에 눌러야 하는 URL은 상태 URL 파라미터에 따라 달라집니다.한마디로 다음과 같습니다.

 .state('recipes.category', {
    url: '/:cat',
    templateUrl: '/partials/recipes.category.html',
    controller: 'RecipesCategoryCtrl',
    resolve: {
      category: function($http) {
        return $http.get('/recipes/' + cat)
          .then(function(data) { return data.data; });
      }
    }
  })

위의 것은 동작하지 않습니다.주사를 놓아 보았다.$routeParams필요한 것을 구하다cat파라미터, 운이 없습니다.올바른 방법은 무엇일까요?

친하게 지내셨잖아요$routeParamsui-router를 사용하는 경우 를 사용합니다.$stateParams대신.이 코드는 유효합니다.

.state('recipes.category', {
    url: '/:cat',
    templateUrl: '/partials/recipes.category.html',
    controller: 'RecipesCategoryCtrl',
    resolve: {
         category: ['$http','$stateParams', function($http, $stateParams) {
             return $http.get('/recipes/' + $stateParams.cat)
                    .then(function(data) { return data.data; });
         }]
     }
})

ui-router 1.0을 사용하는 사용자용$stateParams 는 권장되지 않습니다.대신 오브젝트를 사용해야 합니다.

.state('recipes.category', {
    url: '/:cat',
    templateUrl: '/partials/recipes.category.html',
    controller: 'RecipesCategoryCtrl',
    resolve: {
         category: ['$http','$transition$', function($http, $transition$) {
             return $http.get('/recipes/' + $transition$.params().cat)
                    .then(function(data) { return data.data; });
         }]
     }
})

언급URL : https://stackoverflow.com/questions/19012579/ui-router-resolve-with-dynamic-parameters

반응형