저는이 개념을 고민하고 있습니다.BackboneJs : 뷰에서 el :과 tagName의 차이점은 무엇입니까?
나를 바보로 사용할 수 있습니까? el:
속성과 tagName:
속성의 차이점에 대한 간단한 예를 제공 할 수 있습니까?
일부보기에서 다른보기는 el:
을 사용하고 다른보기는 tagName:
을 사용하는 경우가 있습니다. 나는 특히이 example
저는이 개념을 고민하고 있습니다.BackboneJs : 뷰에서 el :과 tagName의 차이점은 무엇입니까?
나를 바보로 사용할 수 있습니까? el:
속성과 tagName:
속성의 차이점에 대한 간단한 예를 제공 할 수 있습니까?
일부보기에서 다른보기는 el:
을 사용하고 다른보기는 tagName:
을 사용하는 경우가 있습니다. 나는 특히이 example
의 차이 내 자신의 구현과 장난하고있어
은 이것이다 :
엘은 전체보기를 나타내는 실제 DOM 노드에 대한 참조를 유지하기 위해 사용되어야한다.
이것은 jQuery 또는 w/e로 작업을 쉽게 수행 할 수 있음을 의미합니다. $ (this.el) .hide() 또는 $ (this.el) .html ('저는 지금 Jquery 객체입니다.);
TagName은 DOM 노드 유형을 결정하는 데 사용되는 문자열입니다. 기본값은 div이지만 원한다면 원하는 HTML 요소를 만들 수 있습니다.
고려 :
var myView = new view({ el: $("someExistingEl") });
그래서 그들은 함께 사용하지 않습니까? –
함께 사용할 수 없습니다. 'el'을 직접 지정하면,'tagName'은 무시됩니다. –
함께 사용할 수 있습니다. this.el = $ (somethingelse)를 명시 적으로 설정할 수 없으며 this.tagName을 준수해야합니다. $ (this.el) .html ('some stuff')을 사용하면 this.tagName이 무엇이든간에 내부에있게됩니다. –
var View = Backbone.View.extend({
tagName: 'span',
id: 'identity',
class: 'classy',
el: $(this.tagName), // or
el: $('<' + this.tagName + ' />', {
id: this.id, // identity
'class': this.class // classy
}) // this is jQuery shorthand for building an element fyi
});
var view = new View();
:
var view = Backbone.View.extend({
tagName: 'p',
initialize: function() {
_.bindAll(this, 'render');
},
render: function() {
$(this.el).html('I am a jQuery-ized paragraph');
return this;
}
});
$(document.body).append(new view().render().el);
당신이로 실행 중일 수있는 문제 때때로 당신이 태그 이름이 관련이있는 경우 뷰의 인스턴스에 엘을 설정하는 것이있다
잘 작동해야한다고 생각합니다.
'el : $ (this.tagName)'의'this'는 여러분이 생각하는대로되지 않을 것입니다. –
el은 DOM의 기존 요소를 참조하며 tagName은 주어진 경우 className이있는 tagName을 사용하여 새 dom 요소를 만듭니다. – STEEL