Ben aşağıdaki kodla omurga içerisine bir öğeye bir görünüm eklemek çalışıyorum:Omurgalı görünüm oluşturulup oluşturulmadığını nasıl kontrol edebilirim?
var viewContainer = this.$el.find('.view-container'),
pageWrap = this.$el.nextAll();
eğerFIX (viewContainer.empty()) {
this.myView= new ProductsView();
viewContainer.append(application.myView.render().$el),
console.log(myView);
}
Ben appendin toggle
işleviyle viewContainer
görünümüne g görünüm, ancak, düğmeyi her tıklattığımda, myView
yeniden ve tekrar bir kez yerine viewContainer
eklenir. Görünümü eklemeden önce içinde görüntülenmiş olup olmadığını nasıl kontrol edebilirim? Kullanabileceğim !this.rendered()
eşdeğeri var mı?
Bu thread buldum, ancak bu durumda bana yardımcı olmuyor.
GÜNCELLEME - console.log DAN (viewContainer) O görünüyor
[div.view-container.product-container.active, div#subjects_menu.view-container.product-container.hidden.active, prevObject: p.fn.p.init[1], context: undefined, selector: ".view-container"]
Olası çoğaltılabilir [Bir Backbone.View şu anda DOM'da işlenip işlenmediğini nasıl kontrol edebilirim?] (Http://stackoverflow.com/questions/12332373/how-can-i-check-if-a-backbone- view-is-şu anda-render-in-dom) – AKS
Muhtemelen ama bu ekleme ekleyerek önce this.rendered = true; 'bana nasıl erişileceğini hala söylemiyor. – HGB
"viewContainer" ın viewContainer.length yerine herhangi bir çocuğu olup olmadığını kontrol etmek istediğinizi düşünüyorum. Eğer koşulu içinde 'viewContainer.is (: boş)' kullanarak bunu yapabilirsiniz. – AKS