我无法访问简单对象的属性。
这是我跑步时得到的alert(JSON.stringify(user))
:
{"username": "david", "biography": "Hello world."}
但这是我跑步时得到的alert(user.username)
:
undefined
我也尝试user["username"]
过同样的结果。这是在使用 Handlebars 的 Backbone 应用程序的上下文中。这是主干部分:
var User = Backbone.Model.extend({
urlRoot: 'http://api.example.com/user',
});
var Router = Backbone.Router.extend({
routes: {
":username": "profile"
},
profile: function (username) {
var user = new User({id: username});
user.fetch({
beforeSend: authenticate,
success: function() {
var profile = new Profile({user: user});
profile.render();
}
});
}
});
var Profile = Backbone.View.extend({
render: function() {
var source = $("#profile").html();
var template = Handlebars.compile(source);
user = this.options.user;
var html = template(user);
$("#content section").html(html);
}
});
什么可能导致这样的问题?