Pase el alcance actual a modalInstance cuando use la sintaxis controllerAs

Estoy usando la sintaxis controllerAs para evitar una sopa $ scope en mis controladores, y también uso ui.bootstrap para presentar una vista modal.

Necesito abrir un modalInstace que comparte el mismo alcance que el controlador actual. Al inyectar el alcance, probablemente podría hacer algo como:

var modalInstance = $uibModal.open({
      templateUrl: 'addEditModal.html',
      scope: $scope
    });

Sin embargo, como no estoy inyectando el alcance y usando la sintaxis controllerAs, eso no funcionará.

Por lo que he encontrado, deberá usar la resolución para pasar los datos, pero debe pasarlos explícitamente a través de las funciones. ¿Hay alguna manera de pasar todo el alcance?

Hay un montón de cosas que necesito hacer en ese modal y pasar cargas de datos parece excesivo.

No quiero hacer esto, ya que parece desordenado ...

var modalInstance = $modal.open({
  templateUrl: 'myModalContent.html',
  controller: 'ModalInstanceCtrl',
  resolve: {
    user: function() {
        return vm.user;
    },
    something: function() {
        return vm.something;
    },
    blah: function() {
        return blah;
    }
  }
});

¿Alguna idea mejor?

Respuestas a la pregunta(2)

Su respuesta a la pregunta