반응형
angular ui-router에서 브라우저 기록을 변경하지 않고 상태 변경
다음과 같은 논리를 가지고 있다고 가정해 보겠습니다.
- A 상태에서 B 상태로 바꿉니다.
- 우리가 B 상태에 도착할 때마다, 앱은 항상 전화를 걸어 C 상태로 우리를 리디렉션합니다.
$state.go(stateC) - 지금 우리는 C 상태에 있습니다.
제 질문은 C 상태에서 A 상태로 돌아가는 방법입니다. (A 상태는 런타임에 우리가 모르는 어떤 상태가 될 수 있다는 사실, 즉 사용자가 다른 어떤 상태에서도 B 상태에 접근할 수 있다는 것을 의미합니다.)
사용.location값이 "바꾸기"인 옵션...
$state.go(stateC, null, {
location: 'replace'
})
https://angular-ui.github.io/ui-router/site/ #/api/ui.router.state.$state# methods_go 참조
위치 - {boolean=true|string=} - 경우
true위치 표시줄의 url을 업데이트합니다.false하지 않을 것이다.문자열인 경우 다음과 같이 해야 합니다."replace", url을 업데이트하고 마지막 히스토리 레코드를 대체합니다.
서비스에서 방문한 상태를 추적한 다음 이전 상태로 $state.go에 전화하면 됩니다.
다음과 같이 상태 변화를 확인할 수 있습니다.
$rootScope.$on('$stateChangeStart',
function(event, toState, toParams, fromState, fromParams){
// add fromState to history
});
AngularJS에서 $stateProvider의 상태 변화를 $watch하는 방법은?
언급URL : https://stackoverflow.com/questions/39461556/changing-state-without-changing-browser-history-in-angular-ui-router
반응형
'codememo' 카테고리의 다른 글
| XMLHttpRequest는 응답에 오류 상태가 있는 경우에도 항상 "load" 이벤트 수신기를 호출합니다. (0) | 2023.10.10 |
|---|---|
| npm 업데이트가 아무 것도 하지 않습니다. (0) | 2023.10.10 |
| 워드프레스, 깃 및 도커 (0) | 2023.10.10 |
| jdbc 연결에서 드라이버 클래스 이름(드라이버 이름 아님)을 가져오는 방법 (0) | 2023.10.10 |
| 스택 크기 추정 (0) | 2023.10.10 |