在AngularJS中有条件地应用属性的最佳方法是什么?我需要能够根据范围内的布尔变量向元素添加“contenteditable”。使用示例:<h1 attrs="{'contenteditable=\"true\"': editMode}">{{content.title}}</h1>如果$scope.editMode设置为,则会导致将contenteditable = true添加到元素中true。有没有一些简单的方法来实现这样的ng-class属性行为?我正在考虑写一个指令并分享,如果没有。编辑: 我可以看到我提出的attrs指令和ng-bind-attrs之间似乎有一些相似之处,但它在1.0.0.rc3中删除了,为什么会这样呢?
3 回答
POPMUISE
TA贡献1765条经验 获得超5个赞
当使用ng-class时,我使用以下条件有条件地设置类attr(例如在设置SVG样式时):
ng-attr-class="{{someBoolean && 'class-when-true' || 'class-when-false' }}"
相同的方法应该适用于其他属性类型。
(我认为你需要使用最新的不稳定Angular来使用ng-attr-,我目前正在使用1.1.4)
慕工程0101907
TA贡献1887条经验 获得超5个赞
以防万一你需要Angular 2的解决方案然后它的简单,使用属性绑定,如下所示,例如你想要有条件地输入只读,然后在方括号中添加attrbute,然后是= sign和expression。
<input [readonly]="mode=='VIEW'">
- 3 回答
- 0 关注
- 618 浏览
添加回答
举报
0/150
提交
取消