簡體   English   中英

Backbone this.el vs this。$ el

[英]Backbone this.el vs this.$el

對於給定的例子, this.elthis.$el之間有什么區別this.$el

我明白this.$el指向this.el的jQuery對象,在這種情況下是'li'

當我渲染一個視圖時,我可以選擇this.el或者this.$el 當我引用jQuery對象時,如何向頁面呈現內容? 我可以看到如何使用this.$el.html(property) ,指向html,但為什么追加this.$el並讓它渲染讓我感到困惑。

var Person = Backbone.Model.extend({
    defaults: {
        name: 'John Doe',
        age: 30,
        occupation: 'worker'
    }
});

var PersonView = Backbone.View.extend({
    tagName: 'li',

    initialize: function() {
        this.render();
    },

    render: function() {
        var out = this.$el.html(this.model.get('name') + this.model.get('occupation'));
        console.log(this, this.el, this.$el, out);
        $('body').append(this.$el);
    },

});

var person = new Person;
var personview = new PersonView({model: person});

Bojangles是正確的。

this.$el .addClass() this.$el是對jQuery上下文中元素的引用,通常用於.html().addClass()類的東西等。例如,如果你有一個id為someDiv的div,你設置它對於Backbone視圖的el屬性,以下語句是相同的:

this.$el.html() $("#someDiv").html() $(this.el).html()

this.el是本機DOM元素,不受jQuery的影響。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM