2013-12-09 4 views
-1

미안하지만, 나는 좋은 제목을 생각할 수 없었다.백본에서 히스토리 푸시 스테이트의 정밀 제어

기본 누름 동작을 사용하고 싶지만 특정 상황에서 사용자 지정 동작이 필요합니다. 그래서 모든 링크가 정상/로그인,/등록 등이되도록하고 싶습니다. 사용자가 홈페이지에 있다면 링크를 백본을 통해 각각의 페이지로 이동 시키길 원합니다.

그러나 사용자가/product/123과 같은 특별한 페이지라면 우리는 그 페이지에 모달을 표시 할 것이고 href는 "/ login"이라고 말하지만 간단히 route 기능을 호출하여 로그인 페이지에서 url에 #login을 추가하고 (예 : "/ product/123 # login") 해시 태그가있는 푸시 상태를 추가하십시오.

이 추론은 다른 사람이 제품/123/click/login에있을 수 있고 갑자기 제품을 공유하고 제품 URL을 사용할 수 있다고 결정한 후 다시 습관적으로 돌아가서 다시 돌아갈 수 있습니다. 제품보기 [ie. 로그인 모달을 닫고] 예상대로 작동하게하십시오.

위가 가능합니까? 내가 읽었던 백본의 히스토리 모듈은 설정되어있어 잊어 버렸고 백본 설명서를 통해 방법을 볼 수 없었습니다.

답변

0

경로에서 모달을 사용하는 것은 좋지 않습니다. 대부분의 경우 모달 윈도우는 현재 페이지에서 팝업으로 표시되는 것이지 실제 뷰 변경이 아니며 사용자가 수행하는 작업의 상단에 어딘가에 추가되는보기입니다 (사용자가 할 수 없다는 측면에서 모달입니다 그가 무엇이든지 다룰 때까지 그가하고 있었던 것을 계속하십시오).

그 점에서/login 경로는 모달이 아니며 대신 로그인 양식이있는 전체 페이지보기 여야합니다. 그런 다음 다른 페이지에서 "로그인 모달"버튼을 렌더링하는 하위보기가있는 레이아웃보기가 있다고 가정합니다. 이 버튼을 클릭하면 몸체에 (또는 그러나) 추가되는 모달 렌더링을 처리 할 수 ​​있습니다.

이 시나리오에서는 URL을 변경할 필요가 없으므로 백본 라우터가 포함되지 않습니다. 제 요점은 설명하는 유스 케이스는 제품/123 페이지 (다른 제품이 아닌)에서 로그인 모달을 다시 여는 URL (/ product/123 # login)을 공유하는 것이 흥미로운 경우에만 의미가 있다는 것입니다) ... 그리고 그것은 매우 유용한 특징이 아니라고 생각합니다! 내 의견으로는 (이것은 매우 논쟁의 여지가 있습니다.) 로그인 모달은 특정 경로가 있어야하는 것이 아닙니다. 실제로 안정적인 응용 프로그램 경로가 아니기 때문에 로그인 모달이 의미가있는 경우 해당 경로가 있어야합니다.

+0

로그인하는 것을 원하지 않기로 결정했기 때문에 "로그인"을 클릭 한 다음 뒤로를 클릭하면 어떤 상황입니까? 정상적인 경우 로그인 페이지를 열어 본 기록이 없기 때문에 이전에 있었던 제품 페이지로 이동하게됩니다. 실제로, 가장 좋은 방법은/로그인으로 모달을 표시하는 동안 경로를 지정하는 것입니다. 사용자는 모달을 뒤로 또는 닫아서 링크를 가져올 수 있습니다. –