【发布时间】:2012-12-14 09:56:12
【问题描述】:
How do I trigger the success callback on a model.save()? 已经在这里提出了类似的问题,但仍然没有回答如何从回调中触发事件。
所以这是我的代码中的success 回调,我想在其中调用addOne 事件来呈现已保存的评论。除了this.addOne(receivedItem); 之外,一切都运行良好 - 我不能在回调中使用this 来触发此事件。其他地方——我可以。
如何解决这个问题?
CommentsListView = Backbone.View.extend({
...
addOne: function (item) {
var commentView = new CommentView({
model: item
});
this.$el.append(commentView.render().el);
},
addNewComment: function (event) {
var item = {
post_id: this.$('#post_id').val(),
text: this.$('#text').val()
};
var commentItem = new CommentItem();
commentItem.save({'model':item}, {
success: function(receivedItem, response) {
this.addOne(receivedItem); // Uncaught TypeError: Object [object Window] has no method 'addOne'.
}
}, this);
}
});
【问题讨论】:
标签: javascript backbone.js scope callback