저는 Angular를 처음 사용합니다. ng-view 지시문을 처음 사용했습니다. 을 많은 연속 링크를 클릭시, 나는 폰갭 응용 프로그램을 개발하고 있는데 나는 그것을 발견 :AngujarJS - ngRoute/ngView - 누적보기
$location.path('/somePath') //this is illustrative - path depends on link clicked
새로운로드 뷰가 쌓여있다. 이것은 다음을 의미합니다. N 개의 링크 (또는 N 건의 $location.path
)를 따라 가면 안드로이드 장치에서 백 화살표를 클릭하여 N + 1 번 눌러 프로그램을 종료해야합니다. 비록이 동작은 나를 위해 (나는 여기 n00b), 내 응용 프로그램에 필요한 기본 사용자 경험을 좋아 보인다 (그것은 역사 스택과 관련이 있습니까?) -하지만 또한 나는 "메인 메뉴로 이동합니다 "버튼을 클릭하고 해당 버튼을"스택 지우기 "로 설정하고 첫 번째 화면으로 돌아 가야합니다.
왜 필요합니까? 내 앱을 앞뒤로 탐색하고 있었기 때문에 (현재 "메인 메뉴로 이동"버튼은 $location.path('/')
을 다시 스택하고 메인 메뉴보기를 다시 채 웁니다.) 뒤로 화살표 버튼을 사용하여 응용 프로그램을 닫으려고 할 때 그 버튼을 성가신 양의 시간 동안 쳤다.
그래서 : 메인 메뉴 버튼을 클릭하면 어떻게 스택을 지울 수 있습니까? ($location.path('/')
대신)
나는 이것을 해결해야합니다. ui-router를 사용하여 뷰에서 모든 상태를 팝하는 방법은 무엇입니까? UX를 많이 탐색하고 나가기 위해 "돌아 가기"를 클릭하고 버튼을 여러 번 클릭해야하는 경우 UX가 끔찍할 것입니다. ** 문제에서 ui-router는 어떻게 다릅니 까? –
$ location.path를 변경하면 새 페이지로 이동하는 것과 같습니다. 그것은 일반적인 링크를 탐색하고 뒤로 버튼이 돌아갈 때와 마찬가지로 브라우저 기록에 넣습니다. ui-router가이를 해결하는 방법은 경로 (또는 브라우저 기록)를 변경하지 않고도 상태를 변경할 수 있도록 허용하는 것입니다. 앱이 딥 링크를 지원해야하는 경우 브라우저의 URL을 변경해야하기 때문에 앱 주위에 실제 방법이 없습니다. –