Угловой пользовательский интерфейс передачи данных для просмотра

Я хотел бы передать данные из 1 вида (основного вида) в модальное представление с помощью углового загрузочного плагина пользовательского интерфейса, ниже приведен мой код, который не работает:

основной вид

vm.receipt_id = "1234"

<button type="button" class="btn btn-default" ng-click="vm.alertMeJimmy(vm.receipt_id)">Large modal</button>

контроллер

       vm.alertMeJimmy = function(receipt_id) {

            $uibModal.open({
            animation: true ,
            templateUrl: '/cashier/views/cashier.angular_components.modal',
            controller: 'PatientsController',
            controllerAs: 'vm',
            resolve: {
             receipt_id : function () {
                  return receipt_id ;
                }

             },
            size: 'lg'

          });

        }

модальный вид

Я хотел бы получить доступ к нему, как показано ниже в моем модальном представлении

<span ng-bind="vm.receipt_id " ></span>

1 ответ

Решение

Вернуть объект вместо примитива:

angular.module('App').controller('Controller', [
             '$uibModal',
    function ($uibModal) {
        var vm = this;
        vm.receipt_id = 1234;
        vm.alertMeJimmy = function (receipt_id) {
            var modalInstance = $uibModal.open({
                size: 'sm',
                templateUrl: 'modal.html',
                controller: 'Modal as vm',
                resolve: {
                    'receipt': { id: receipt_id }
                }
            });
        }
    }
]);

angular.module('App').controller('Modal', [
             'receipt',
    function (receipt) {
        var vm = this;
        vm.receipt = receipt;
    }
]);

Пример на Плункер: http://plnkr.co/edit/d9RLJLHr1zr9d5gVKHpD?p=preview

Другие вопросы по тегам