Javascript 未知提供程序:$uibModalProvider<;-$uibModal<;-modalpop指令
我正在使用Angular的$uibModal,并试图在页面加载时创建弹出窗口。它不起作用。我认为问题出在指令上。这是我的代码:Javascript 未知提供程序:$uibModalProvider<;-$uibModal<;-modalpop指令,javascript,angularjs,Javascript,Angularjs,我正在使用Angular的$uibModal,并试图在页面加载时创建弹出窗口。它不起作用。我认为问题出在指令上。这是我的代码: angular.module('myModule', ['ui.bootstrap']) .directive('modalPop', ModalDirective) .controller('ModalController', ModalController); function ModalDirective($uibModal) { r
angular.module('myModule', ['ui.bootstrap'])
.directive('modalPop', ModalDirective)
.controller('ModalController', ModalController);
function ModalDirective($uibModal) {
return {
scope: {},
restrict: 'E',
templateUrl: 'directives/modal/tutorial.html',
controller: function () {
return $uibModal.open({
controller: 'ModalController',
windowClass: 'outside ' + size,
animation: true,
templateUrl: './client/dialogs/' + template + '.html',
resolve: {
dialogParams: function () {
return {
title: 'title',
message: 'message'
};
}
}
});
}
};
}
function ModalController($uibModalInstance) {
$scope.close = function () {
$uibModalInstance.dismiss();
};
}
如何使其工作?您没有将提供程序注入指令的控制器。还可以尝试将提供程序显式注入指令:
ModalDirective.$inject = ['$uibModal'];
function ModalDirective($uibModal) {
return {
scope: {},
restrict: 'E',
templateUrl: 'directives/modal/tutorial.html',
controller: function ($uibModal) {
return $uibModal.open({
controller: 'ModalController',
windowClass: 'outside ' + size,
animation: true,
templateUrl: './client/dialogs/' + template + '.html',
resolve: {
dialogParams: function () {
return {
title: 'title',
message: 'message'
};
}
}
});
}
};
}
如果这不起作用,那么您没有正确地包含用于Angular UI引导的JS文件。(这很可能是原因)这是我的LIB,顺序相同:-jquery.js-jquery-ui.js-object-observe.js-bootstrap.js-angular.js-angular-mocks.js-angular-local-storage.js-angular-animate.js-angular-resource.js-angular-touch.js-angular-sanitize.js-angular-permission.js-ui-bootstrap.js-ui-bootstrap-tpls.js-angular-utf8-base64.js-ng-websocket.js-lodash.js-iscroll-probe.js-angular-modal-service.min.js