【发布时间】:2013-08-02 10:16:18
【问题描述】:
我想将一些布尔属性绑定/设置到指令。但我真的不知道如何做到这一点并实现以下行为。
假设我想为一个结构设置一个标志,假设一个列表是否可折叠。我有以下 HTML 代码:
<list items="list.items" name="My list" collapsable="true"></list>
items 是双向绑定的,name 只是一个属性
我希望 collapsable 属性在列表的 $scope 中可用,方法是传递一个值(true、false 或其他),或者双向绑定
<list items="list.items" name="{{list.name}}" collapsable="list.collapsed"></list>
我正在开发一些 UI 组件,我想提供多种与它们交互的方式。也许,随着时间的推移,有些人想通过将对象的属性传递给属性来了解该组件的状态,无论是折叠还是未折叠。
有没有办法做到这一点?如果我误解了什么或我错了,请纠正我。
谢谢
【问题讨论】:
-
在传递直接布尔值
true或false时,将属性设置为与'='绑定的双向将不起作用,因为我无法将范围的值设置为另一个值。例如$scope.collapsable = false; -
你会在运行时更改可折叠属性值还是在deslaration时保持不变
-
如果值不会改变,那么只需使用 attrs["collapsable"]
-
正如我所说,值可能会在控制器内发生变化
标签: angularjs angularjs-directive angularjs-scope