因此,基本上this.template
將(在大多數情況下)html template
的編譯版本,你認爲。
它將在其中佔位符,並將參數與模板中佔位符相同的鍵。例如(把手模板),
<section id="{{id}}">
<header>{{header_text}}</header>
</section>
考慮到上述代碼作爲模板,在編譯時,並將其存儲在this.template
,它返回一個函數,它接受一個json
對象作爲參數,所以現在this.template
是一個功能。
你可以這樣調用它下面,
var html_text = this.template({
id : "main_content",
header_text : "Hi Welcome !!"
});
this.$el.html(html_text);
執行後,el
的內容將是
<section id="main_content">
<header>Hi Welcome !!</header>
</section>
所以當你做this.$el.html(this.template(this.model.toJSON());
,它實際上產生了所需的json
參數this.template
方法適合你,因此工作正常。
而且如Loamhoof所述,在this.$el.html(this.model.get("city"));
中,您將使用html方法,該方法將根據模型的屬性值設置el的html內容。