1

我正在使用 uiModal 创建一个弹出窗口。我有以下方法:

createPopUp - 创建modalInstance,像这样

$scope.createFileUploadPopUp = function() {
                $scope.modalInstance = $modal
                                    .open({
                                        scope : $scope,
                                        animation : true,
                                        templateUrl : 'xyz.html',
                                        backdrop : 'static',
                                        keyboard : false
                    });                 

                };

closeModal - 关闭模式。

$scope.closeModal = function() {
                    $scope.modalInstance.close();
                };

我正在从 html 页面调用创建弹出窗口,它被正确调用。当我closeModal从 html 调用方法时,关闭按钮也有效。

但是当我从同一个控制器中的另一个方法调用该closeModal方法时,我得到一个异常,即 modalInstance 未定义。

方法调用(调用方法用$rootScope定义):$scope.closeModal();

调试没有帮助,因为控件将转到closeModal,但 modalInstance 值未定义。任何帮助表示赞赏。

4

1 回答 1

0

我终于得到了这个工作!它显示未定义的原因是,我正在导入的控制器中有另一个同名的模态对象 modalInstance 。重命名以避免重复已经解决了这个问题。

于 2016-03-16T04:17:58.443 回答