Polymer (聚合物)样式和布局后的自定义元素生命周期挂钩
当我的元素被初始化时,我需要知道我的元素在页面上的什么位置。我尝试使用connectedCallbackPolymer (聚合物)样式和布局后的自定义元素生命周期挂钩,polymer,web-component,Polymer,Web Component,当我的元素被初始化时,我需要知道我的元素在页面上的什么位置。我尝试使用connectedCallback connectedCallback(){ console.log(this.$.someDiv.getBoundingClientRect()) } 但它给了我{top:0,right:0,bottom:0,left:0,width:0…},显然是因为调用connectedCallback时,布局还没有发生。当我使用开发工具时,$0.$.someDiv.getBoundingClientRe
connectedCallback(){
console.log(this.$.someDiv.getBoundingClientRect())
}
但它给了我{top:0,right:0,bottom:0,left:0,width:0…}
,显然是因为调用connectedCallback
时,布局还没有发生。当我使用开发工具时,$0.$.someDiv.getBoundingClientRect()
提供了正确的值(例如,在本例中,{top:154.59375,right:614,bottom:634.59375,left:54,width:560…}
)
在计算布局之后,我是否可以使用任何生命周期挂钩、事件或其他东西来获取这些信息?我不想使用SetTimeout,只希望它能工作…您是否在您的
ready
方法中尝试过它element@jeanPoku我最初在ready()
中使用了in,但这不起作用。根据polymer文档,第一个**附加**回调保证在**准备就绪**之前不会触发。
(对于polymer 2.0附加的
称为连接回调
)