2019-10-11 TIL

문제상황


메인페이지에 두개의 탭이 있고

다른 페이지에서 메인페이지로 이동할때 첫번째 탭이 아닌 두번째 탭의 페이지가 보여져야한다.

그림으로 말하자면

  • 보통의 경우는 아래처럼 첫번째 탭이 기본으로 보여져야 하지만

![$location.\(search1](/assets/angularjs/$location.\)search1.PNG)

  • 특정페이지에서 메인페이지로 이동할때는 아래처럼 두번째 탭이 보여져야 한다는것.

![$location.\(search2](/assets/angularjs/$location.\)search2.PNG)


문제 해결


  • $location.$$search 사용
// 메인페이지에 해당하는 Controller
// tabIndex는 html단에서 탭의 번호를 뜻함
// 여기서는 총 2개, index는 0과 1
ct.tabIndex = 0;

if ($location.$$search.tabIndex) {
    ct.tabIndex = $location.$$search.tabIndex;
};
// 특정페이지에 해당하는 Controller
// 내가 보여주고자 하는 tabIndex는 1.
ct.fn.test = function($event) {
    common.locationHref('/#/iaas/compute?tabIndex=1');
};

Reference


Comments