未知提供者:Angularjs模式中的$ modalInstanceProvider< - $ modalInstance

时间:2015-06-09 21:10:19

标签: angularjs twitter-bootstrap modal-dialog angular-ui-bootstrap

我正在使用角度bootstrap ui模式,它工作正常,但当我尝试使用modalInstance关闭它时,它给出了上面的错误。这是我的代码

  var app = angular.module('LoginModule', ['ui.bootstrap']);
app.controller('LoginModal', ['$scope',  '$modal', function ($scope, $modal) {
    $scope.animationsEnabled = true;
    $scope.open = function (size) {

        var modalInstance = $modal.open({
            animation: $scope.animationsEnabled,
            templateUrl: '/app/template/Login.html',
            controller: 'LoginController',
            size: size
        });
    }
}]);
app.controller('LoginController', ['$scope', '$modalInstance', '$http', function ($scope, $modalInstance, $http) {
    $scope.model = {};
    $scope.loading = {
        state: false
    }
    $scope.errors = '';
    $scope.email = "";
    $scope.cancel = function () {

        $modalInstance.dismiss('cancel');
    };
}]);

我在控制器中创建了取消功能,我用模板指定它仍然给出错误。我在LoginController里面的按钮中使用ng-click =“cancel()”。 需要帮助?

1 个答案:

答案 0 :(得分:4)

看起来您正在模态视图中使用ng-controller指令实例化控制器。相反,您只需要使用模态的controller选项,以便获得注入的特殊依赖项$modalInstance。如果您使用ng-controller="LoginController"实例化控制器,则需要将其删除,并且您不需要它,因为控制器会自动实例化(通过解析特殊依赖项$modalInstance)并附加到模板。