나는 이것에 대한 기사를 찾고있다. 그리고 내가 발견 한 것은 런타임에만 상태를 동적으로 추가하는 것이다. 내가 찾은 해결책에 가장 가까운 것은 deferIntercept
, $urlRouter.sync()
및 $urlRouter.listen()
을 사용합니다. 그러나 $urlRouter
은 런타임 (컨트롤러 사용자 작업 전에 실행 됨)에서만 사용할 수 있습니다.컨트롤러에 경로 추가하기
이 plunker은 런타임에 동적 동적 추가 상태 인 을 표시하지만 도전 과제는 대신 컨트롤러에 구현하는 것입니다.
아래의 내용은 내가 달성하고자하는 것을 보여줍니다. 나는이 문제에 대해 수 주일 동안 고심하고있다. 누군가가 내게 욕망 결과를 얻는 방법에 대한 힌트를 줄 수 있기를 바랍니다.
// Predefined state in config
$stateProvider.state('default', {
url: '',
templateUrl: '',
})
// Predefined state in config
$stateProvider.state('home', {
url: '',
templateUrl: '',
})
// Additional Added state in controller when user click button
$scope.clickButton = function() {
$stateProvider.state('newpage', {
url: '',
templateUrl: ''
})
};
당신이 완전이 된 index.html에서 NG 반복하여 인쇄 클릭 콜백 2 개 어레이와 컨트롤러를 추가 http://plnkr.co/edit/wDVf2S?p=preview
을 답변 (들) http://stackoverflow.com/q/24727042/1679310. 그들은 시동 시나리오 (서버로부터 오는 데이터로부터 상태를 구성)를 커버하고 런타임시 새로운 상태를 추가합니다. ... –
이것이 도움이 될지 확인하십시오. http://stackoverflow.com/questions/25866387/angular-u-router-programmatically-add-states/31478967 – nmanikiran
@ RadimKöhler 의견을 보내 주셔서 감사합니다. 질문과 답변도 읽었습니다. 하지만 런타임에 컨트롤러 사용자 작업 내에서 새 상태를 추가하고 싶습니다. – stackdisplay