Javascript $uibModalInstance.close不工作

Javascript $uibModalInstance.close不工作,javascript,angularjs,modal-dialog,angular-ui-bootstrap,angular-promise,Javascript,Angularjs,Modal Dialog,Angular Ui Bootstrap,Angular Promise,我有以下代码: .service'loginModal',函数$rootScope,$uibModal{ 函数updateUserDatauser,数据{ Object.keysdata.forEachfunctionkey{ user.facebook[key]=数据[key]; }; 返回用户。$update; } 返回函数{ var实例=$uibModal.open{ templateUrl:'tpls/modals/login.html', 控制器:函数$scope、$uibModal

我有以下代码:

.service'loginModal',函数$rootScope,$uibModal{ 函数updateUserDatauser,数据{ Object.keysdata.forEachfunctionkey{ user.facebook[key]=数据[key]; }; 返回用户。$update; } 返回函数{ var实例=$uibModal.open{ templateUrl:'tpls/modals/login.html', 控制器:函数$scope、$uibModalInstance、facebookService、UserService{ 函数updateUserDatauser,数据{ Object.keysdata.forEachfunctionkey{ user.facebook[key]=数据[key]; }; 返回用户。$update; } $scope.login=函数{ facebookService.login.thenfunctionresponse{ var authResponse=facebookService.getAuthResponse; facebookService.api'/me'.thenfunctionresponse{ 如果响应&&!response.error{ 回答:图片http://graph.facebook.com/“+response.id+”/picture?type=large'; UserService.query{ “facebook.id”:response.id, “facebook.token”:authResponse.accessToken }.$PROMITE.THEN功能结果{ response.token={ 值:authResponse.accessToken, expiresIn:authResponse.expiresIn }; 如果结果为0.length>0 updateUserDataresults[0],响应//这不满足或拒绝 。然后,$uibModalInstance.close,$uibModalInstance.Disclose; 其他的 UserService.save{ facebook:回应, 本地:{ 用户名:response.email | | response.id, 密码:response.token.value } }.$承诺 。然后,$uibModalInstance.close,$uibModalInstance.Disclose; },$uibModalInstance.discouse; }否则{ $uibModalInstance.dismissresponse.error | | response; } },$uibModalInstance.discouse; },$uibModalInstance.discouse; }; } instance.opened.then函数{ $rootScope.openModals.pushinstance; }; 函数removeInstanceFromModalList{ $rootScope.openModals.splice$rootScope.openModals.indexOfinstance,1; } instance.result.thenremoveInstanceFromModalList,removeInstanceFromModalList; 返回instance.result;
} 您可以使用$uibModal.open返回的承诺,该承诺附带了close方法。 您可以将其存储在控制器$scope中:

$scope.modal_instance = $uibModal.open({ ...
然后使用:

$scope.modal_instance.close();

而不是$uibModalInstance.close。

Dangit-出现版本问题


很明显,我使用的AngularUI版本与angular1.4.7不兼容,因此我必须升级到1.4.8。

遗憾的是,这也不起作用,控制台上也没有打印错误。您是否尝试过$rootScope.modal_instance=$uibModal.open{?