backbone.js – 检测骨干集合何时被抓取(Backbone 1.0.0)

在最新版本的Backbone中有一个新的行为(1.0.0,其中在获取集合后,默认情况下不再触发重置事件.

http://backbonejs.org/#changelog

Renamed Collection’s “update” to set,for parallelism with the similar
model.set(),and contrast with reset. It’s now the default updating
mechanism after a fetch. If you’d like to continue using “reset”,pass
{reset: true}.

问题是我想捕获这个事件时收集已经被最终取出(很常见的情况,确实!)

我可以听取添加,删除和更改事件,但如果集合是空的,我不知道如何捕获事件.

那么,当收集请求已经定稿时,什么是新的,推荐的方式来捕获,还是通过{reset = true}实现它的唯一方法?

ps:这是原来的问题,BTW can’t catch Backbone Collection reset event

解决方法

Backbone.sync doc,

Whenever a model or collection begins a sync with the server,a
“request” event is emitted. If the request completes successfully
you’ll get a “sync” event,and an “error” event if not.

例如,

var C = Backbone.Collection.extend({
    url: '/echo/json/'
});

var c = new C();
c.on('sync',function() {
    console.log('sync');
});
c.fetch();

和演示http://jsfiddle.net/nikoshr/GLATm/

相关文章

kindeditor4.x代码高亮功能默认使用的是prettify插件,prett...
这一篇我将介绍如何让kindeditor4.x整合SyntaxHighlighter代...
js如何实现弹出form提交表单?(图文+视频)
js怎么获取复选框选中的值
js如何实现倒计时跳转页面
如何用js控制图片放大缩小