Artık Chrome'da Object.observe()
varsayılan olarak açık durumdadır, tarayıcının yerleşik özelliğini yeniden kullanmak istediğim bir grup vakayla karşılaşıyorum (hidden
, title
, draggable
), ancak *Changed
izleyiciler artık özellik değiştiğinde çağrılacaklar.Object.observe() altında yerel özellikleri gözlemlemek için değişiklik izleyicileri kullanma
bir örneği hidden
geçerli: http://jsbin.com/jizikaje/1/edit (hiddenChanged()
asla denir)
Benim şu anki geçici çözüm niteliği değişen gözlemlemek için attributeChanged()
kullanmaktır:
attributeChanged: function(attrName, oldVal, newVal) {
// Cannot use *Changed watchers for these native properties.
if (attrName == 'hidden') {
this.marker.setVisible(!this.hidden);
}
}
önerilen yaklaşım nedir? https://github.com/Polymer/polymer/issues/379
'Uyarı() 'Chrome 34'te benim için geçerli gibi görünüyor. Belki bu düzeltildi mi? – jokeyrhyme
Chrome 34, Object.observe() ürününe sahip değil. Kirli kontrol kullanır. – ebidel
Ah evet, bu mantıklı. DOM henüz V8'e taşınmamış, bu yüzden Object.observe() muhtemelen DOM öğelerinde çalışmaz. – jokeyrhyme