我试图允许在表单上单击一个按钮,其投票数为+ = 1。你认为我可以做一些像idea.set({“votes”:+ = 1})这样的事情,但似乎并不喜欢这样。我做了一个事件,听我点击我的upvote按钮,现在我被卡住了。有人可以帮忙吗?
IdeaVoter.Views.IdeasIndex = Backbone.View.extend(
template: HandlebarsTemplates['ideas/index'],
initialize: function(){
this.collection.on('reset',this.render, this)
this.collection.on('add',this.render, this);
},
events: {
"submit #new_idea ": "createIdea",
"click #upvote": "upvote"
},
render: function(){
$(this.el).html(this.template())
this.collection.each(this.addIdea)
this.collection.each(this.upvote)
return this;
},
addIdea: function(idea){
view = new IdeaVoter.Views.Idea({model: idea})
$('#ideas').append(view.render().el)
},
upvote:function(idea){
idea.save()
}
});
答案 0 :(得分:0)
我认为你正在寻找一个简单的
idea.set('votes', idea.get('votes') + 1);
您可能希望在模型中添加一个方法,以隐藏简单idea.upvote()
之类的内容。