2017-02-14 1 views
0

사이드 바에있는 버튼 중 하나를 클릭하여 현재 사이드 바를 바꾸고 싶지만 작동하지 않습니다.ngMaterial nested sidebar

첨부 된 codepen에서 알 수 있듯이 "설정"버튼을 클릭하여 다른 사이드 바를 표시 할 수 있습니다.

var mbp= angular.module("mbp"); 

mbp.controller("viewController", function($scope,$mdSidenav){ 
    $scope.currentView = 'mbp'; 

    $scope.setView = function (view){ 
     $scope.currentView = view; 
    } 

    $scope.toggleSidenav = function(sidenavId){ 
     $mdSidenav(sidenavId).toggle(); 
    } 
}) 

가 어떻게 이것을 달성 할 수

다음
<div flex layout="column" ng-controller="viewController"> 
    <md-actions layout="row"> 
     <md-button class="md-raised mbp-button-def" ng-click="toggleSidenav('menu')">Menu</md-button> 
      <md-sidenav class="md-sidenav-left" md-component-id="menu"> 
<md-list flex> 
    <md-list-item class="md-menu-header"><h1>Menu</h1></md-list-item> 
     <md-list-item ><md-button class="menu-button" ><md-icon class="small-icon" 
       md-svg-icon="img/icons/about.svg"></md-icon>About...</md-button></md-list-item> 
    <md-list-item ><md-button class="menu-button">Activity</md-button></md-list-item> 
    <md-list-item ><md-button class="menu-button">Print</md-button></md-list-item> 
    <md-list-item ><md-button class="menu-button">Help</md-button></md-list-item> 
    <md-list-item ><md-button class="menu-button">Contact Us</md-button></md-list-item> 
    <md-divider></md-divider> 
    <md-list-item ><md-button class="menu-button"><md-icon class="small-icon" 
       md-svg-icon="img/icons/settings.svg" ng-click="toggleSidenav('settings')"></md-icon>Settings<md-icon class="small-icon right-arrow" 
       md-svg-icon="img/icons/arrow.svg"></md-button></md-list-item> 
    <md-list-item ><md-button class="menu-button" ><md-icon class="small-icon" 
       md-svg-icon="img/icons/logout.svg"></md-icon>Logout</md-button></md-list-item>   
</md-list> 

    </md-sidenav> 
    <md-sidenav class="md-sidenav-left" md-component-id="settings"> 
<md-list flex> 
    <md-list-item class="md-menu-header"><h1>Settings</h1></md-list-item> 
     <md-list-item ><md-button class="menu-button" ><md-icon class="small-icon" 
       md-svg-icon="img/icons/trading.svg"></md-icon>Trading</md-button></md-list-item> 
    <md-list-item ><md-button class="menu-button">Alerts</md-button></md-list-item> 
    <md-list-item ><md-button class="menu-button">Display</md-button></md-list-item> 

    <md-divider></md-divider> 

    <md-list-item ><md-button class="menu-button" ><md-icon class="small-icon" 
       md-svg-icon="img/icons/back.svg"></md-icon>Back</md-button></md-list-item>   
</md-list> 

    </md-sidenav> 
</div> 

는 컨트롤러 :

여기

https://codepen.io/anon/pen/apXGPP

는 HTML 코드입니다 : 여기

는 codepen 링크입니다?

감사

답변

1

I've는 아이콘 요소 내부에 ng-click="toggleSidenav('settings')"을 배치 나타났습니다. 이런 종류의 요소가이 설정을 지원하지 않는 것 같습니다.
ng-click="toggleSidenav('settings')"을 outter md-button으로 이동하면 원하는대로 작동하는 것 같습니다.

피스 아웃