function(view) {
      if (!view) { return view; }
  
      this.triggerMethod('before:remove:child', view);
  
      if (!view.supportsDestroyLifecycle) {
        Marionette.triggerMethodOn(view, 'before:destroy', view);
      }
      // call 'destroy' or 'remove', depending on which is found
      if (view.destroy) {
        view.destroy();
      } else {
        view.remove();
      }
      if (!view.supportsDestroyLifecycle) {
        Marionette.triggerMethodOn(view, 'destroy', view);
      }
  
      delete view._parent;
      this.stopListening(view);
      this.children.remove(view);
      this.triggerMethod('remove:child', view);
  
      // decrement the index of views after this one
      this._updateIndices(view, false);
  
      return view;
    }
function(view) {
      if (!view) { return view; }
  
      this.triggerMethod('before:remove:child', view);
  
      if (!view.supportsDestroyLifecycle) {
        Marionette.triggerMethodOn(view, 'before:destroy', view);
      }
      // call 'destroy' or 'remove', depending on which is found
      if (view.destroy) {
        view.destroy();
      } else {
        view.remove();
      }
      if (!view.supportsDestroyLifecycle) {
        Marionette.triggerMethodOn(view, 'destroy', view);
      }
  
      delete view._parent;
      this.stopListening(view);
      this.children.remove(view);
      this.triggerMethod('remove:child', view);
  
      // decrement the index of views after this one
      this._updateIndices(view, false);
  
      return view;
    }
function ( view ) { if ( ! view ) { return view ; } this . triggerMethod ( 'before:remove:child' , view ) ; if ( ! view . supportsDestroyLifecycle ) { Marionette . triggerMethodOn ( view , 'before:destroy' , view ) ; } // call 'destroy' or 'remove', depending on which is found if ( view . destroy ) { view . destroy ( ) ; } else { view . remove ( ) ; } if ( ! view . supportsDestroyLifecycle ) { Marionette . triggerMethodOn ( view , 'destroy' , view ) ; } delete view . _parent ; this . stopListening ( view ) ; this . children . remove ( view ) ; this . triggerMethod ( 'remove:child' , view ) ; // decrement the index of views after this one this . _updateIndices ( view , false ) ; return view ; }
Remove the child view and destroy it. This function also updates the indices of later views in the collection in order to keep the children in sync with the collection.
Remove the child view and destroy it . This function also updates the indices of later views in the collection in order to keep the children in sync with the collection .