我正在尝试为按钮创建指令 - 有时用户需要ng-click,有时候需要ui-sref
<md-button ng-click="controller.ngClick" ui-sref="controller.uiSref">
显然,其中只有一个可以同时设置 - 但我怎样才能“隐藏”不需要的那个呢?
如果我提供ng-click,那么我需要html看起来像
<md-button ng-click="controller.ngClick">
我提供ui-sref,看起来应该是
<md-button ui-sref="controller.uiSref">
这是否可以使用角度/指令?或者我应该创建2个指令,每个类型一个?
答案 0 :(得分:1)
我认为最简单的解决方案 - 使用额外的&#34; flag&#34;:
<md-button ng-click="controller.clickable ? controller.ngClick() : '';" ui-sref="!controller.clickable ? controller.uiSref : '';">
或使用 ng-if :
<md-button ng-if="controller.clickable" ng-click="controller.ngClick()">
<md-button ng-if="!controller.clickable" ui-sref="controller.uiSref">
其中 controller.clickable - 标记以在click和href之间切换。