Javascript 未知提供程序:$uibModalProvider<;-$uibModal<;-modalpop指令

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的$uibModal,并试图在页面加载时创建弹出窗口。它不起作用。我认为问题出在指令上。这是我的代码:

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