代码之家  ›  专栏  ›  技术社区  ›  dman

聚合物3混合物-可能在混合物中实现宿主属性,如聚合物1的行为?

  •  0
  • dman  · 技术社区  · 6 年前

    我将聚合物1的行为转化为聚合物3的混合物。

    通过聚合物1的行为,我可以在行为中放置宿主属性。聚合物3混合物有可能吗?

    <script>
      AccountBehavior = {
        properties: {
          tabactivated: Boolean
        },
    
        observers: ['_refreshActivePosts(tabactivated)'],
    
        _refreshActivePosts: function(tabactivated) {
          if (tabactivated) {
            this.$.account.refreshAjax();
          }
        }
      }
    </script>
    
    1 回复  |  直到 6 年前
        1
  •  1
  •   akc42    6 年前

    我不确定我能准确地记得旧主机属性是做什么的。但我有这个 module 我写它是为了找到一个元素的宿主

    export default function domHost(self) {
      let parent = self.parentNode;
      while(parent && parent.nodeType !== 11) {
        parent = parent.parentNode;  //work up the hierarchy
      }
    
      return parent ? parent.host : self;
    }
    

    我经常使用它向宿主元素添加事件侦听器 像这样:-

     connectedCallback() {
        super.connectedCallback();
        this.domHost = domHost(this);
        this.domHost.addEventListener('pas-filelocation-request', this._gotRequest);
      }
      disconnectedCallback() {
        super.disconnectedCallback();
        this.domHost.removeEventListener('pas-filelocation-request', this._gotRequest);
      }
    
    推荐文章