[英]my Backbone.View functions are undefined
我正在擴展Backbone.View,然后調用其渲染函數,但出現“未捕獲的TypeError:view.render不是函數”
代碼(在文檔加載時運行):
var view = Backbone.View.extend({
id: "my-view",
render: function() {
console.log("in render, this =", this);
this.el.innerHTML = "Hello";
return this;
}
});
console.log("outside view, view =", view);
document.body.appendChild(view.render().el);
導致控制台:
outside view, view = function (){return r.apply(this,arguments)}
VM639:58 Uncaught TypeError: view.render is not a function
看起來它應該是一個構造函數,但是我嘗試制作一個新的view(),然后調用其函數,並得到了另一個錯誤:
Uncaught TypeError: this._ensureElement is not a function
at e.View (backbone-min.js:1)
我在其他地方尋找了答案( 主干網視圖:函數未定義 , 渲染主鏈模型視圖返回未定義 ),但是示例很復雜,我不知道如何將答案應用於我的代碼。 我舉了一個非常簡單的例子,希望即使我的錯誤很簡單,也能鼓勵您回答。
這是一個jsfiddle: https ://jsfiddle.net/s9Lhq82a/
您定義了一個從Backbone.View擴展的視圖類。 要創建該類的實例,您必須使用new
。
var View = Backbone.View.extend({
// this is your View Class
});
var myView = new View(); // this is an instance of View, it has a render function
myView.render().el;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.