【发布时间】:2016-11-20 21:49:30
【问题描述】:
您好,我正在尝试使用 ui-router 和 ui-bootstrap 创建有状态的模态,我已经像这样成功打开了模态,
.state('static.login', {
url: '^/login',
onEnter: function($modal, $state, $stateParams) {
var modalInstance;
modalInstance = $modal.open({
animation : false,
templateUrl : 'app/components/login/views/login.view.html',
controller : 'loginController',
size : 'lg'
});
return modalInstance.result["finally"](function() {
return $state.go('^');
});
}
// templateUrl: 'app/components/login/views/login.view.html',
// controller: 'loginController'
})
但我正在努力从我的 loginController 中关闭模式,我认为这将是一个简单的运行 $modal.dismiss('cancel') 的情况,但我被告知关闭是未定义的功能,我是否需要做其他事情才能能够从我的控制器关闭我的模式?
此外,当我导航到 /login 时,主页会显示在模式下方,如果我将当前页面保留在其下方会很棒,这可能吗?
【问题讨论】:
-
一种方法是通过服务打开它,并与控制器共享服务。将 modalInstance 对象存储在服务中
-
在控制器中打开它作为激活功能..您可以轻松关闭它。
标签: javascript angularjs twitter-bootstrap angular-ui-router angular-ui-bootstrap