2017-12-13 12 views
0

데이터베이스의 데이터로 경로 매개 변수를 채우고 싶습니다.

예를 들어, 나는

$routeProvider.when('/:param1/:param2', loadParams()) 

그리고 loadParams 기능

function loadParams() { 
    var data = { 
     path: window.location.pathname 
    }; 
    $.ajax({ 
     type: 'POST', 
     url: 'getRouteParams', 
     data: data, 
     success: function(data, status) { 
      var attributes = {}; 
      attributes.controller = data.controller; 
      attributes.templateUrl = data.templateUrl; 
      return attributes; 
     } 
    }); 
} 

그러나이 기능이 나에게 오류를 줄이

당신이 routeprovider에 reloadsearch 속성을 사용
Cannot read property 'reloadOnSearch' of undefined 
+0

이 도움이되는지 알고 버전에 대한 정보가 필요하십니까 중 반환을 넣어입니까? https://stackoverflow.com/questions/37756167/dynamic-routing-based-on-external-data – Brian

+0

각도 1.6을 사용 중입니다 – istaro

답변

0

나는 대답 자신

솔루션은 비동기를 비활성화하고 "성공"

function loadParams() { 
    var data = { 
     path: window.location.pathname 
    }; 
    var attributes = {}; 
    $.ajax({ 
     type: 'POST', 
     url: 'getRouteParams', 
     data: data, 
     async: false, 
     success: function(data, status) { 
      attributes.controller = data.controller; 
      attributes.templateUrl = data.templateUrl; 
     } 
    }); 
    return attributes; 
} 
0

, 난 돈 귀하의 코드에서 찾을 수 없습니다. [reloadOnSearch = true] - {부울 값 =} - $ location.search() 또는 $ location.hash() 만 변경되면 경로를 다시로드하십시오.

옵션이 false로 설정되고 브라우저의 url이 변경되면 루트 범위에서 $ routeUpdate 이벤트가 브로드 캐스팅됩니다.

+0

내 코드 – istaro

+0

에서 reloadOnSearch를 사용하지 않습니다. "reloadOnSearch"를 사용하지 마십시오. false 옵션 –

+0

여전히 작동하지 않습니다. – istaro