Pérdida de memoria al eliminar elementos de DOM usando backbone

Estoy teniendo problemas con los elementos DOM que se dejan en la memoria después de ser eliminados. He configurado un ejemplo que se muestra a continuación. Nota: estoy utilizando el complemento del administrador de diseño de red troncal para administrar mis vistas (así como jQuery).

Hice una instantánea de montón en Chrome antes y después de eliminar uno de los elementos de la lista y comparé los dos:

Como se puede ver, el elemento LI todavía está en la memoria.

Backbone Layout Manager llama a view.unbind () y view.stopListening () cuando se elimina una vista.

A continuación se muestra el código de ejemplo.

ListOfViewsToDelete.js

var TestModel = Backbone.Model.extend({
  });

  var TestCollection = Backbone.Collection.extend({
    model: TestModel,
  });

  var ViewToDelete = Backbone.View.extend({
    template: "ViewToDelete",
    tagName: "li",
    events: {
      "click .delete-button": "deleteItem"
    },
    deleteItem: function() {
      this.$el.trigger('remove-item', [this.model.id]);
    }
  });

  var ListOfViewsToDelete = Backbone.View.extend({
    template: "ListOfViewsToDelete",
    initialize: function() {
      this.collection = new TestCollection();

      for (var i = 0; i < 5; i++) {
        this.collection.add(new TestModel({id: i}));
      }

      this.listenTo(this.collection, 'all', this.render);
    },
    events: {
      "remove-item": "removeItemFromCollection"
    },
    beforeRender: function() {

      this.collection.each(function(testModel) {
        this.insertView("ul", new ViewToDelete({
          model: testModel
        }));
      }, this);

    },
    removeItemFromCollection: function(event, model) {
      this.collection.remove(model);
    }
  });

router.js

app.useLayout("MainLayout").setViews({
                    "#main": new ListOfViewsToDelete()
                }).render();

ListOfViewsToDelete.html

<ul>
</ul>

ViewToDelete.html

View to delete
<button class="delete-button">x</button>

Respuestas a la pregunta(1)

Su respuesta a la pregunta