我想单独更新一组帖子,并在每个请求完成后重新渲染我的收藏。
目前,下面的代码永远不会触发renderPosts,我不知道为什么
onClickCopyPosts: function(posts, publish_target) {
var self = this;
var renderPosts = _.after(posts.length, function() {
console.log('got here');
self.collection.fetch({reset: true});
});
_.each(posts, function(post) {
post = new PostModel(post);
post.set('id', null);
post.set('publish_target', publish_target);
post.save({success: renderPosts});
});
},
答案 0 :(得分:2)
保存的签名是model.save([attrs], [options])
..此处success
处理程序是一个选项。
因此,当您将签名定义为post.save({success: renderPosts});
时,成功处理程序将传递到不执行任何操作的属性中。
将其更改为
post.save({}, {success: renderPosts});
或
post.save(null, {success: renderPosts});
将选项作为第二个参数传递。