2016-02-23 3 views
0

Пожалуйста, помогите мне,угловая ошибка инжектора Unknown Provider

У меня есть контроллер, как это:

showAlert ниже была вызвана с помощью кнопки с нг-клик = showAlert (data.nip)

var showAlert = function ($scope, $modal, $log, nip) { 
    var modalInstance = $modal.open({ 
     templateUrl: 'public/js/modal.html', 
     controller: ModalInstanceCtrl, 
     resolve: { 
      nip: function() { 
       return nip; 
      } 
     } 
    }); 
} 
showAlert.$inject = ['$scope', '$modal', '$log', 'nip']; 

var ModalInstanceCtrl = function ($scope, $modalInstance, nip) { 
    $scope.nip = nip; 
    console.log("Nilai NIP : "+nip) 
}; 

от государства:

.state('masterpegawai.alltalenta.modal', { 
     url: '/modal', 
     views:{ 
      "modal": { 
      controller: showAlert, 
      } 
     } 
    }) 

Он бросает ошибку, как это:

Error: [$injector:unpr] Unknown provider: nipProvider <- nip 
+1

Видимо, вы не включили в файл с 'nip' модуля и вы не потрудились искать свою ошибку, так как есть, вероятно, сотни этих ошибок, плавающих вокруг – maurycy

+0

Привет мауриси, я новичок в угловом, на самом деле я склонен передавать data.nip из showAlert (data.nip), чтобы его можно было показать в модальном диалоге через решение: { nip: function() { return nip; } } –

+0

'nip' не существует, он должен быть определен как служба, фабрика или директива, после чего вы можете ввести его. Это эквивалент вызова функции, которая еще не определена – maurycy

ответ

-1

Вы пытаетесь внедрить nip, но из вашего кода вы пытаетесь передать его в качестве параметра:

showAlert.$inject = ['$scope', '$modal', '$log', 'nip']; <-- You can't inject 'nip' 
+0

Это правильно, модуль 'nip' недоступен – maurycy

+0

Итак, как передать data.nip из showAlert (data.nip), чтобы он мог быть доставлен для решения ? –

+0

Я бы отделил контроллер от функции, которая открывает модальную форму, и введет модальный и просто передаст параметр функции –

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