Передать простой параметр в угловой UI-Bootstrap модал?

Я вижу много сообщений о публикации многих сложных вещей в модальности ui-bootstrap, но я просто хочу передать простой параметр, чтобы я мог использовать его для отображения различного содержимого в диалоге.

Например, у меня есть основной документ, который имеет MyDocumentController as mydoc

В MyDocumentController такая функция, как

_this.modals = {
    inviteUser: function() {
      $modal.open({
        animation: true,
        templateUrl: 'modules/templates/modals/modal-invite-user.html',
        controller: 'UserInviteModalController as invite',
        size: 'lg'
      });
    }, ...

И я называю это в основном документе следующим образом: вот откуда я хочу передать параметр:

<a href="" ng-click="users.modals.inviteUser(returningUser)">

А вот контроллер для модала:

    (function() {

  'use strict';

  angular.module('mymodule')
    .controller('UserInviteModalController', function($log, $modalInstance, toastr) {

      var _this = this;

      _this.someVar = HERE'S WHERE I WANT TO GET THE VALUE returningUser FROM THE NG-CLICK

      _this.inviteDialog = {
        close: function() {
          $modalInstance.close();
        },
        resendInvite: function() {
          toastr.success('A new invite has been sent.');
          $modalInstance.close();
        }
      };

    });
})();

Как происходит передача простого параметра в контроллер диалога?

1 ответ

Решение

Попробуйте использовать resolve:

_this.modals = {
  inviteUser: function(returningUser) {
    $modal.open({
      animation: true,
      templateUrl: 'modules/templates/modals/modal-invite-user.html',
      controller: 'UserInviteModalController as invite',
      size: 'lg',
      resolve: {
        returningUser: function() {
          return returningUser;
        }
      }
    });
  }, ...

А затем введите его в свой контроллер:

angular.module('mymodule')
.controller('UserInviteModalController', function($log, $modalInstance, toastr, returningUser) {
    var _this = this;

    _this.someVar = returningUser;
Другие вопросы по тегам