2016-08-05 2 views
0

Я использую настраиваемую директиву в своем заголовке, чтобы открыть модем входа в систему, щелкнув функцию из директивного контроллера из заголовка (его работа отлично и модально открыта успешно). в модальном HTML я также есть кнопка (вход), когда я нажимаю знак в вызове другое функция (RegistrationModal) из директивы, но его бросить ошибка не не открыт, пожалуйста, проверьте кодошибка в угловой директиве js при открытии модального

.directive('header', function() { 
    return { 
     restrict: 'E', 
     templateUrl: HTML.HEADER, 
     scope: true, 
     controller: function ($scope, $rootScope, $http, $templateCache,$compile) { 
      $scope.RegistrationModal = function() { 
       $(".modal").remove(); 
       $(".modal-backdrop").remove(); 
       $http.get(HTML.SIGN_UP, {cache: $templateCache}).success(function (data) { 
        $(document.body).append($compile(data)($scope)); 
        $('#sign-up1').modal('show'); 
       }); 
      } 
      $scope.loginModal = function() { 
       if ($("#sign-up1").length > 0) { 
        $('#sign-up1').modal('hide'); 
       } 
       console.log(">>>>>>>>>>>>in login") 
       $http.get(HTML.LOGIN, {cache: $templateCache}).success(function (data) { 
        console.log(">>>>>>>>>>>...data is>>>>>.", data); 
        $(document.body).append($compile(data)($scope)); 
        $('#login-popup').modal('show'); 
       }); 
      } 

     }, 


    }; 
    return directive; 
}) 

Ошибка

angular.js:13708 TypeError: Cannot convert undefined or null to object

+1

Можете ли вы разместить плункер и подробную трассировку стека? Это поможет лучше! – Srijith

+0

@Srijith ...... я хочу подтвердить одно. как только я вызываю функцию loginModal из директивы, а функция компилирует данные шаблона и добавляет его в тело .again я вызываю функцию RegistrationModal из той же директивы, я должен уничтожить область или что-то еще. –

+0

Если вы хотите использовать модальный в своем проекте, Я бы порекомендовал использовать [ui-bootstrap] (http://angular-ui.github.io/bootstrap/) – Emidomh

ответ

0

HTML Что такое объект? Вы используете его как глобальную переменную, поэтому он, вероятно, выходит за рамки.

Вы должны вводить все такие вещи, как услуги или постоянный.

+0

..... HTML-объект является частью константы services.issue не связан с этим ... я думаю, когда я снова свяжусь с областью, когда проблема компиляции может быть связана с этой строкой $ (document.body) .append ($ compile (data) ($ scope)). –

+0

Итак, какая строка из этой выдержки дает сообщение об ошибке? PS. Вы не должны использовать Angular и jQuery вместе. –

Смежные вопросы