访问ready:函数中的发布属性

时间:2014-07-06 16:20:32

标签: polymer

如何在我的自定义元素的ready:函数中访问已发布的属性。如果有人将其传入,我可以得到它,但我想再次检查默认值。即:

Polymer('post-card', {
    publish: {
        inline : false
    },
    ready:function(){
              // returns what's passed in
          var passedIn = this.getAttribute('inline'), 

              // returns null when inline is not present on the element
              default = this.getAttribute('inline') ;
    }
});

我知道默认变量是在elemnt上寻找属性“inline”。我的问题是,如何访问我在发布对象下设置的默认值?

谢谢你提前:)

1 个答案:

答案 0 :(得分:2)

95%的情况下,使用聚合物和已发布的属性时,您永远不需要getAttribute。已发布的属性在this上作为属性进行访问。在元素的上下文中,this是元素。要检查默认值,您可以执行以下操作:

(function() {
  var INLINE_DEFAULT = false;

  Polymer('post-card', {
    publish: {
      inline: INLINE_DEFAULT
    },
    ready: function() {
      console.log(this.inline === INLINE_DEFAULT);
    }
  }
}();