`ng-click =“$ mdMenu.open($ event)”`不使用角度材料

时间:2017-11-17 00:07:32

标签: javascript angularjs angular-material

我在我的角度应用程序中添加了一个材质组件,但点击不起作用。

参考网址:https://material.angularjs.org/latest/demo/menu

bug:

在“位置模式演示”部分中,ng-click="$mdMenu.open($event)"无效。我没有在文档中看到我必须添加像$ mdMenu这样的依赖项。类似的组件也不起作用。

<div layout="column" flex-xs="100" flex-sm="100" flex="33" layout-align="center center">

        <p><code>md-position-mode="target-right target"</code></p>
        <md-menu md-position-mode="target-right target" >
          <md-button aria-label="Open demo menu" class="md-icon-button" ng-click="$mdMenu.open($event)">
            <md-icon md-menu-origin md-svg-icon="call:portable-wifi-off"></md-icon>
          </md-button>
          <md-menu-content width="4" >
            <md-menu-item ng-repeat="item in [1, 2, 3]">
              <md-button ng-click="ctrl.announceClick($index)">
                  <div layout="row" flex>
                    <p flex>Option {{item}}</p>
                    <md-icon md-menu-align-target md-svg-icon="call:portable-wifi-off" style="margin: auto 3px auto 0;"></md-icon>
                  </div>
              </md-button>
            </md-menu-item>
          </md-menu-content>
        </md-menu>

</div>

1 个答案:

答案 0 :(得分:1)

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

确保为您阅读材料库中的内容更改的文档加载了正确版本的角度材质库。

&#13;
&#13;
<html lang="en" >
<head>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <!-- Angular Material style sheet -->
  <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.4/angular-material.css">
</head>
<body ng-app="BlankApp" ng-cloak>
  <!--
    Your HTML content here
  -->  
  
  <!-- Angular Material requires Angular.js Libraries -->
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.js"></script>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-animate.min.js"></script>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-aria.min.js"></script>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-messages.min.js"></script>

  <!-- Angular Material Library -->
  <script src="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.4/angular-material.min.js"></script>
  
  <!-- Your application bootstrap  -->
  <script type="text/javascript">    
    /**
     * You must include the dependency on 'ngMaterial' 
     */
    angular.module('BlankApp', ['ngMaterial']);
  </script>
  
  <md-menu>
   <!-- Trigger element is a md-button with an icon -->
   <md-button ng-click="$mdMenu.open($event)" class="md-icon-button" aria-label="Open sample menu">
    Menu
     <md-icon md-font-icon="icon-settings"></md-icon>
   </md-button>
   <md-menu-content>
     <md-menu-item><md-button ng-click="doSomething()">Do Something</md-button></md-menu-item>
   </md-menu-content>
  </md-menu>
</body>
</html>

<!--
Copyright 2016 Google Inc. All Rights Reserved. 
Use of this source code is governed by an MIT-style license that can be in foundin the LICENSE file at https://material.angularjs.org/license.
-->
&#13;
&#13;
&#13;