2016-06-14 53 views
3

使用角度&材質,左側有一個sidenav用於提供用戶功能(登錄,註冊...)。角度:單擊元素後關閉ng-sidenav

工作正常,但我希望酒吧在用戶點擊菜單後自動關閉。目前,酒吧保持開放。

側邊欄代碼:

<md-sidenav md-component-id="user_sidenav" class="md-sidenav-left" flex> 
    <md-menu-content flex> 
     <md-menu-item> 
      <md-button ui-sref="app.user-state()"> 
       <span> 
        User 
       </span> 
      </md-button> 
     </md-menu-item> 
     <md-menu-item> 
      <md-button ui-sref="vlg.user-other-state()"> 
       <span> 
        Other 
       </span> 
      </md-button> 
     </md-menu-item> 
... 

任何想法?

回答

3

我所做的是在控制器中創建一個函數,用於關閉sidenav,然後單擊調用該函數的元素。

app.controller('AppController', ['$scope', '$mdSidenav', 
    function ($scope, $mdSidenav) { 

     $scope.close = function() { 
      $mdSidenav('left').close(); 

     }; 

}]); 

,然後在HTML

<div ng-controller="AppController"> 
    <!-- Add in code for sidenav--> 
    <md-button ng-href="#/path" ng-click="close()"></md-button> 
</div> 

你也可以只下面的代碼添加到一個功能,如果你的要素已經具備了NG-點擊連接。

.then(function() { 
     $mdSidenav('left').close(); 
});