Angular $ uibModal, вызывающий ошибку: [$ injector: unpr]

0

Я пытаюсь реализовать $ uibModal с этого сайта

но как только я добавляю $ uibModal-сервис моему контроллеру, я получаю Error: [$ injector: unpr] http://errors.angularjs.org/1.4.8/ $ инжектор /unpr? p0 =% 24uibModalProvider %20% [CN10 ] %20% 24uibModal %20% 3C- %20dailymenuController Мой угловой код ниже:

var app = angular.module('App', ['djangular-confirm','djangular-alert','ui.bootstrap']).config(function($httpProvider,$interpolateProvider) {

                $httpProvider.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
                $httpProvider.defaults.headers.common['X-CSRFToken'] = '{$ csrf_value $}';
                $interpolateProvider.startSymbol('{$');
                $interpolateProvider.endSymbol('$}');
            });

            app.controller('dailymenuController', function($scope, $http, $location, $djconfirm, $djalert, $uibModal ) {

                var modalInstance = $uibModal.open({

                });
});

Я добавил эти два файла: 'ui-bootstrap-custom-1.3.3.js' 'bootstrap-custom-tpls-1.3.3.js'

Я новичок в угловой и мало развился с использованием углового до сих пор. Я искал в google и SO и узнал, что "ui.bootstrap" при создании модуля. Но даже это не решило проблему. Любая помощь будет большой.

  • 0
    Вы правильно вводите ui.bootstrap и $ uibModel, возможно, проблема заключается в импорте. Можете ли вы предоставить код, куда вы импортируете зависимости?
  • 0
    Какова связь между dailymenuController и модулями App ?
Показать ещё 1 комментарий
Теги:
bootstrap-modal
angular-ui-bootstrap

2 ответа

1

Такая ошибка [$injector:unpr] указывает, что Angular не может разрешить провайдеру для используемого вами элемента - в вашем случае вам нужно ввести $uibModal в ваш контроллер

app.controller('dailymenuController', ['$scope', '$uibModal', function($scope, $uibModal ) {
  var modalInstance = $uibModal.open({
     //...
  });
}]);
  • 0
    Я уже добавил это к своему контроллеру -> app.controller («dailymenuController», функция ($ scope, $ http, $ location, $ djconfirm, $ djalert, $ uibModal)
  • 0
    это зависит от сборки / структуры вашего проекта, но в этом случае вам может потребоваться указать элементы DI в дополнительном массиве, как я предложил: app.controller(NAME, [ ARRAY_IN_QUOTES, function(ARRAY){ //code }])
Показать ещё 1 комментарий
0

Вы должны включить оба:

<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/2.5.0/ui-bootstrap.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/2.5.0/ui-bootstrap-tpls.min.js"></script>

После включения Угловая.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню