Это немного странно. Когда я ищу эту проблему в Интернете, я вижу много страниц результатов Google и решений SO... но ни одна из них не работает!
Короче говоря, я пытаюсь реализовать AngularUI Bootstrap Modal. Я продолжаю получать следующую ошибку:
Ошибка: [$injector:unpr] Неизвестный провайдер: $uibModalInstanceProvider ‹- $uibModalInstance ‹- addEntryCtrl
Вот мой HTML:
<nav class="navbar navbar-default">
<div class="container">
<span class="nav-col" ng-controller="navCtrl" style="text-align:right">
<a class="btn pill" ng-click="open()" aria-hidden="true">Add New</a>
</span>
</div>
</nav>
Вот мой контроллер:
var app = angular.module('nav', ['ui.bootstrap']);
app.controller('navCtrl', ['$scope', '$uibModal', function($scope, $uibModal) {
$scope.open = function() {
var uibModalInstance = $uibModal.open({
animation: true,
templateUrl: 'addEntry/addEntry.html',
controller: 'addEntryCtrl',
});
};
}]);
И, наконец, вот мой модальный код:
var app = angular.module('addEntry', ['firebase', 'ui.bootstrap']);
app.controller('addEntryCtrl', ['$scope', '$firebaseObject', '$state', '$uibModalInstance', function($scope, $firebaseObject, $state, $uibModalInstance) {
$scope.cancel = function() {
$uibModalInstance.dismiss('cancel');
};
$uibModalInstance.close();
}]);
Решения, которые я пробовал:
- обновлены как Angular Bootstrap (версия: 0.14.3), так и Angular (v1.4.8)
- изменил uibModalInstance на modalInstance
- изменен $uibModalInstance на modalInstance
- поместите мой addEntryCtrl в мой ModalInstance
Есть предположения? Это вело меня к стене уже почти 2 дня.
* ИЗМЕНИТЬ *
Я должен отметить две вещи:
1) когда я удаляю $uibModalInstance как зависимость от addEntry, мои кнопки отправки HTML-формы работают нормально, и форма выглядит идеально. Даже редирект происходит корректно (при отправке). Проблема остается: модальное окно все еще остается на экране и выдается ошибка, что $uibModalInstance не определен. Это имеет смысл, так как я удалил его как зависимость, но мне, очевидно, все еще нужно, чтобы модальное окно закрывалось при отправке.
2) Кроме того, у меня почти идентичный код работает в другой части моего приложения. Единственная разница в том, что он работает через фабрику. В остальном код идентичен. Таким образом, я уверен, что все мои зависимости есть и версии верны. Так. Черт. Странный.
Спасибо!
app
(может возникнуть проблема). Кроме того, ваш второй блок кода содержит незамкнутую функцию и массив. Вероятно, это опечатка, или вы просто пропустили последние части, но вы должны попытаться сделать код в своих вопросах полным. - person Phil   schedule 26.11.2015$uibModalInstance
отлично работает в моих приложениях - person Phil   schedule 26.11.2015$uibModalInstance
был добавлен в 0.14.3 ~ github.com/angular-ui/bootstrap/issues/ 4778а> - person Phil   schedule 26.11.2015