2017-07-30 95 views
0

我想知道angularjs中是否有方法根據條件添加或刪除屬性。 例如,而不是寫這樣的事情Angularjs - 有條件地設置屬性

<div ng-if="isClickable" ng-click="clicked()">This is my button</div> 
<div ng-if="!isClickable"> this is my button</div> 

我能寫的東西,也許,這樣的:

<div ng-click="clicked()" ng-attrs="{'ng-click': isClickable}"> 
+3

使用方式建議你爲什麼不只是使用''

This is my button
添加 –

+1

屬性有哪些AngularJS指令是有問題的,因爲那些添加的指令需要被編譯。刪除這些指令甚至更成問題。該框架不支持這樣的。尋找另一種方式來實現你想要的。 – georgeawg

回答

2

使用任何角度你不能刪除屬性指令(你可以通過編寫你自己的自定義指令來做到這一點)。相反,你可以這樣div的轉化爲button,並使用ng-disabled

<button ng-disabled="!isClickable" ng-click="clicked()">This is my button</button> 

或者您也可以通過@JBNizet

<div ng-click="isClickable && clicked()">This is my button</div> 
+0

在這種情況下,這很簡單,但在複雜的情況下,您可以更輕鬆地複製 –

+0

@ user3554268您是否可以解釋您具有的複雜場景? –