聚合物包装和angular.element

时间:2014-08-06 13:01:24

标签: angularjs polymer

通过将Polymer组件和angularjs一起使用,我有点困惑。 例如 paper-tabs :我制作了paperTabs指令,我在core-select事件中添加了事件监听器。它成功触发,但我不能使用元素的selected选项。我想这是因为聚合物包装纸。如何将angular.element和Polymer包装器一起使用?

UPD:

我自己找到答案。我应该使用wrap(element[0]).selected

代码:

CommonModule.directive 'paperTabs', () ->
    restrict: 'E'
    link    : (scope, element, attributes) ->                               
        element.on('core-select', (event) ->
            selectedIndex = wrap(element[0]).selected;
        )
嗯,奇怪的规则。

  

声誉低于10的用户在询问后8小时内无法回答自己的问题。

1 个答案:

答案 0 :(得分:0)

这并不奇怪。

当您使用angular.element()时,您会收到包含DOM元素集合的对象。您可以从HTML字符串创建它或从DOM中选择。

您可以通过两种方式访问​​聚合物组件,首先介绍上述和第二种:

...
link: function(scope, element) {
  var selectedIndex;
  element[0].addEventListener('core-selected', function() {
    selectedIndex = element[0].selected;
  });
}
...