Javascript-форум (https://javascript.ru/forum/)
-   Angular.js (https://javascript.ru/forum/angular/)
-   -   Динамическое создание директивы (https://javascript.ru/forum/angular/50171-dinamicheskoe-sozdanie-direktivy.html)

artur-pro.z 15.09.2014 15:11

Динамическое создание директивы
 
Привет.
Добавляю директиву в 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', а не объект.
Собственно вопрос: как передать данные в динамически создаваемую директиву?


Часовой пояс GMT +3, время: 21:18.