我想在md-2-line list-item指令上有一个md-menu。注意:不是在辅助操作上,而是主要在列表项本身上。文档说明第一个元素用作触发器并保留在DOM中,而第二个元素表示菜单内容。所以我很惊讶以下结构不起作用。
<md-list>
<md-menu>
<md-list-item class="md-2-line" ng-click="openMenu($mdOpenMenu, $event)" ng-repeat="prop in properties">
<div class="md-list-item-text">
<h3>{{ prop['display_name'] }}</h3>
<p>{{ object[prop.key] }}</p>
</div>
</md-list-item>
<md-menu-content width="6">
<md-menu-item ng-repeat="val in prop['values']">
<md-button ng-click="updateAttribute(prop.key, val)">
{{val}}
</md-button>
</md-menu-item>
</md-menu-content>
</md-menu>
</md-list>
但是,我真的不明白我做错了什么。我也不断收到以下错误,其中我不知道其含义:
angular.js:13550 TypeError:无法读取属性&#39; hasAttribute&#39;未定义的 在r(http://localhost/flatt.io/app/node_modules/angular-material/angular-material.min.js:13:26527)
和
angular.js:13550 TypeError:无法读取属性&#39; 0&#39;未定义的 at enableHoverListener(angular-material.min.js:13)
此致
答案 0 :(得分:1)
你的ng-repeat在哪里定义prop是在md-list-item标签上。当该标签关闭时,prop不在范围内,因此当您去定义md-menu-content时它不可用。