Angular:点击元素

时间:2016-06-14 08:20:04

标签: angularjs material

使用角度&材料,左边有一个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>
...

有什么想法吗?

1 个答案:

答案 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();
});