使用角度&材料,左边有一个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>
...
有什么想法吗?
答案 0 :(得分: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-click,您也可以将以下代码添加到函数中。
.then(function () {
$mdSidenav('left').close();
});