#javascript #angularjs #angular-ui-bootstrap
#javascript #angularjs #angular-ui-bootstrap
Вопрос:
Я пытаюсь использовать uibModal (из angular-ui-bootstrap версии 0.12.1) в приложении AngularJS (версия 148). Я знаю о текущих версиях angular. Когда я пытаюсь использовать модальный код, используя приведенный ниже пример кода, я вижу ошибку:
TypeError: $uibModal.open is not a function
Я добавил в приложение следующее:
angular.module('someApp', ['ui.bootstrap']);
В файле контроллера я использую следующее:
angular.module('someAppController')
.controller('someController', ['$scope', '$http', $'location', '$modal', 'someService',
function($scope, $http, $locaton, $uibModal, someService) {
При событии:
$uibModal.open({
templateUrl: 'some.html',
windowClass: 'modal-danger'
});
Я попытался заменить $uibModal на $modal (как в вызове модуля, так и там, где я пытаюсь создать модальный). Однако я получаю ту же ошибку, жалуясь на $uibModal.open или $modal.open — это не ошибка. Есть мысли о том, что я делаю неправильно? Я не могу найти никаких проблем с версиями или другими зависимостями, вызывающими проблемы.
Ответ №1:
У вас есть некоторые опечатки в вашем коде, и вы неправильно вводите $uibModal
поставщика
изменить
.controller('someController', ['$scope', '$http', $'location', '$modal', 'someService'
Для
.controller('someController', ['$scope', '$http', '$location', '$uibModal', 'someService'
также измените
templateUrk: 'some.html',
Для
templateUrl: 'some.html',
Комментарии:
1. тип был именно таким — опечатка в stackoverflow. Я смог устранить проблему — я использую $ moal, а не $ uibModal (я понимаю, что это рекомендуется в зависимости от используемой версии) Спасибо за информацию.