md-menu具有x-position =“before | after”属性。我想动态更改属性。到目前为止,我已经尝试了
<md-menu [attr.x-position]="isLeftToRightLanguage()? 'after': 'before'" ... >
那不起作用(没有错误)。我也试过没有方括号,这让我在浏览器控制台中出现了MdMenuInvalidPositionX错误。
<md-menu x-position="isLeftToRightLanguage()? 'after': 'before'" ... >
PS:isLeftToRightLanguage()是组件中返回布尔值的方法。
答案 0 :(得分:0)
你应该使用mdMenuTriggerFor
属性,如下所示
<button md-icon-button [mdMenuTriggerFor]="menu" (click)="clicked($event)">
<md-icon>more_vert</md-icon>
</button>
<md-menu #menu="mdMenu">
<button md-menu-item>
<span>Redial</span>
</button>
<button md-menu-item disabled>
<span>Check voicemail</span>
</button>
<button md-menu-item>
<span>Disable alerts</span>
</button>
</md-menu>
或者您也可以使用positionX
和positionY
来处理事件位置,如下所示,
clicked(event){
console.log(event);
}
您应该使用event.screenX
和event.screenY
来获取点击的X和Y位置
<强> LIVE DEMO 强>