Показать сообщение отдельно
  #1 (permalink)  
Старый 15.09.2014, 15:11
Новичок на форуме
Отправить личное сообщение для artur-pro.z Посмотреть профиль Найти все сообщения от artur-pro.z
 
Регистрация: 30.05.2013
Сообщений: 3

Динамическое создание директивы
Привет.
Добавляю директиву в controller'e другой директивы (директива родитель):
.directive('visitPreview', ['$compile', function ($compile) {
/*...*/
scope: false,
controller: function ($scope, $timeout) {
                $scope.addEditor = function () {
                    $('#appContainer').append($compile("<visit-editor model='selectedVisit'/>")($scope));
                    $timeout(function() {
                        $('#visitEditor').modal('show');
                    }, 0);                    
                };
            },

создаваемая директива имеет такой scope:
scope: { model: '@' }

Директива компилируется нормально, проблема с передачей данных в model.
Необходимо передать объект selectedVisit, он доступен в $rootScope и в самой родительской директиве.
Если передавать:
$('#appContainer').append($compile("<visit-editor model='selectedVisit'/>")($scope));

то model получает строку 'selectedVisit', а не объект.
Собственно вопрос: как передать данные в динамически создаваемую директиву?
Ответить с цитированием