Polymer,访问自定义元素/命名空间问题

Polymer, accessing custom elements / namespace issues

我在开发 Polymer 应用程序时遇到了一些范围问题。本质上,我试图将自定义元素用作包含相关逻辑的类。

假设我有一个侦听器正在侦听自定义元素元素上的点击事件,我想访问另一个元素中的函数,在本例中是元素父元素,父元素:

<polymer-element name="custom-elem">
  <template>
  </template>
  <script>
     Polymer({
        attached: function(){
               this.addEventListener('mousedown', function(e) {
                    if (e.which === 1){
                      this.parentNode.parentNode.testFunc(e);
                      //or this.parentNode.querySelector.... etc
                    }
                    else if (e.which === 3){
                    }


                }.bind(this));
}
</script>
</polymer-element>

我发现我必须遍历 DOM 才能找到我要查找的元素,或者在新创建的元素中创建引用。我意识到我可以在包含上述逻辑的外部脚本中创建一个对象,但这似乎使定义自定义元素/Web 组件的目的无效。

是否可以在不导航 DOM 且不创建外部脚本的情况下轻松访问 Polymer 注册元素的成员?

我认为,如果您重新考虑您的方法,使其更符合 Polymer 的设计目标,您会过得更轻松。这可能有帮助 -