我正在尝试重置我的收藏而不会触发’重置’事件.我已经设置了我的收藏,以收听’重置’和’添加’事件
@.listenTo(@options.muses,'add',@addOne) @.listenTo(@options.muses,'reset',@addAll)
当我点击一个按钮时,我想要做的第一件事是清除收藏
optionButtonClicked: (e) -> e.preventDefault() target = @$(e.currentTarget) //step to clear out the collection @options.muses.reset({silent:true})
但是当我进行一些日志记录和检查时,我意识到’reset’事件仍然被触发,即@addAll函数仍然被调用.
我在这里错过了什么吗?是不是沉默:真的应该压制重置事件?
解决方法
reset有两个可选参数,model 1st,options 2nd.来自docs:resetcollection.reset([models],[options]).
所以你需要传入silent选项作为第二个参数.
@options.muses.reset(undefined,{silent:true});