Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Backbone.js 从视图和服务器中删除主干集合_Backbone.js_Collections_Coffeescript - Fatal编程技术网

Backbone.js 从视图和服务器中删除主干集合

Backbone.js 从视图和服务器中删除主干集合,backbone.js,collections,coffeescript,Backbone.js,Collections,Coffeescript,努力使以下代码在管理主干集合的视图中工作: class VGStream.Views.Scenarios.ScheduleRisks extends Backbone.View template: JST['backbone/templates/scenarios/schedule_risks'] initialize: (options) -> super Backbone.pubsub.on 'allSchedulesRemoved', @removeAllS

努力使以下代码在管理主干集合的视图中工作:

class VGStream.Views.Scenarios.ScheduleRisks extends Backbone.View
  template: JST['backbone/templates/scenarios/schedule_risks']

  initialize: (options) ->
    super
    Backbone.pubsub.on 'allSchedulesRemoved', @removeAllScheduleRisks, @

  removeAllScheduleRisks: =>
    for risk in @risks.models
      risk.destroy
    @render()

  render: ->
    super
    @risks.fetch()
    @$el.html @template @
    @
我只是展示Coffeescript类视图中的相关代码片段。这不会从数据库或列表视图本身删除“风险”模型。我该怎么做?删除所有计划后,将正确触发allSchedulesRemoved事件。我希望相关的风险也从视图和数据库中删除

  • 您不必总是调用
    super
  • 有内置的
    @risks.each()
    方法在集合中循环
  • 不建议将
    fetch()
    放入
    render()
  • 要清除集合,您可以执行几个
    @risks。删除(risk)
    或在销毁所有内容后,
    用空对象重置集合
  • risk.destroy
    实际上会向您的后端发送一个删除请求,所以它是否在服务器中被删除取决于您的后端代码