【问题标题】:Setting {silent: true} when resetting a collection still triggers the 'reset' event重置集合时设置 {silent: true} 仍会触发“重置”事件
【发布时间】:2013-01-01 22:06:50
【问题描述】:

我正在尝试在不触发“重置”事件的情况下重置我的收藏。我已将我的收藏设置为同时收听“重置”和“添加”事件

@.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})

但是,当我进行一些日志记录和检查时,我意识到“重置”事件仍在被触发,即 @addAll 函数仍在被调用。

我在这里遗漏了什么吗?不静默:真应该抑制重置事件吗?

【问题讨论】:

    标签: backbone.js collections reset silent


    【解决方案1】:

    reset 有两个可选参数,models 1st,options 2nd。来自文档:resetcollection.reset([models], [options])

    所以你需要传入静默选项作为第二个参数。

    @options.muses.reset(undefined, {silent:true});
    

    【讨论】:

      猜你喜欢
      • 2012-06-07
      • 2012-01-11
      • 1970-01-01
      • 2017-10-12
      • 1970-01-01
      • 1970-01-01
      • 2019-01-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多