我是backbone.js的新手,這裏是我的問題。Backbone.js打印「function String(){[native code]}」而不是模型屬性
首先,我設置的路由:
var Router = Backbone.Router.extend({
initialize: function(){
var data = {
member: new Member.Model({ _id: 'some id' })
};
_.extend(this, data);
// Use main layout and set Views.
app.useLayout("main-layout").setViews({
".member": new Member.Views.Start(data)
}).render();
},
routes: {
"": "index"
},
index: function() {
this.member.fetch();
}
});
在指數航線,這將僅僅獲得起點視圖,它當一個元素成員類匹配添加到DOM。這工作得很好。然而在模板中我有:
<%= model.get('username') %>
而這種打印
function String() { [native code] }
而不是模型屬性。這裏是模型和視圖類:
var Member = app.module();
Member.Model = Backbone.Model.extend({
urlRoot: '/Members',
idAttribute: "_id",
defaults: {
_id: null,
name: String,
email: String,
username: String,
initials: String,
provider: String,
provider_id: String,
confirmed: Boolean,
provider_avatar: String
},
initialize: function(models, options){
}
});
Member.Views.Start = Backbone.View.extend({
template: "member/start",
serialize: function() {
return { model: this.options.member };
},
initialize: function() {
}
});
對於我的項目,我使用的骨幹樣板https://github.com/backbone-boilerplate/backbone-boilerplate模板enging:https://github.com/backbone-boilerplate/backbone-boilerplate/wiki/Working-with-templates
爲什麼我得到這個文本,而不是模型值,以及如何解決這一問題?
沒有看到模型定義或模板調用或你正在使用什麼樣的模板引擎,很難提供幫助,用戶名被定義爲一個函數嗎? – Andrew
@Andrew我更新了我的問題 –