2
以下示例取自聚合物飞镖documentation on behaviors。它利用toggleHighlight
中的方法set
。我不明白这是如何可能的,因为set
没有在任何地方定义。如何在聚合物镖行为混合中设置属性?
@behavior
abstract class HighlightBehavior {
@Property(notify: true, observer: 'highlightChanged')
bool isHighlighted = false;
static created(instance) {
print('Highlighting for $instance enabled!');
}
@Listen('click')
toggleHighlight(_, __) {
set('isHighlighted', !isHighlighted);
},
@reflectable
highlightChanged(bool newValue, _) {
toggleClass('highlighted', newValue);
}
}
如何在触发所有使数据绑定工作的功能的行为中设置聚合物属性?
一个行为是否应该执行PolymerBase
以便能够使用set
-method?快速测试显示set
在行为执行PolymerBase
时起作用。但这不是如何记录的。我可以通过实施PolymerBase
来诱发一些不需要的副作用吗?
谢谢,现在我明白了。 来自Java需要一些时间才能习惯这个功能。 –
伟大的:-)行为是复杂的,行为的文件备件,所以不明显。在用一些代码绕过之后,事情变得更加清晰。其实我不需要编写自己的行为,开始一次,但所需的功能已经在polymer_elements库中。 –
我正在为一个业务应用程序构建一个框架,我想用元素的行为来公开一个公共API。请参阅下面的示例,其中'view-companies'和'view-users'在ViewBehavior中混合,允许shell元素处理其子元素。 ' view-companies> '我认为这种分组通用功能的用例符合行为的思想。 –