angular ui bootstrap:当模式关闭时,promise被解析/拒绝
angular ui bootstrap: promise resolved/rejected when modal closed
我正在使用angular ui引导桥库开发angular和bootstap。我想实现的是重用模态组件,并将其封装在一个承诺中,当模态成功关闭(按下OK
按钮时)或被拒绝(按下或单击模态之外的cancel
按钮时),该承诺将得到解决。
据我所见,有一个来自网桥库的$modal
服务,它只有一个可用的方法:open(options)
。还有内置的angular promise实现:$q
。我正在想办法把两者结合起来。
我想要一个自定义组件(服务、工厂?),它将提供一个返回promise的startFlow
方法。调用startFlow
也将打开引导模式。当模态关闭(积极或消极)时,承诺可能会被解决或拒绝。
有人能提示一下如何实现吗?到目前为止,我还没找到一个现有的解决方案。。。
open
返回的对象的result
属性是一个承诺,其行为与您描述的完全一样。事实上,文档中的示例位于https://angular-ui.github.io/bootstrap/#/modal使用它:
var modalInstance = $modal.open({
templateUrl: 'myModalContent.html',
controller: 'ModalInstanceCtrl',
size: size,
resolve: {
items: function () {
return $scope.items;
}
}
});
modalInstance.result.then(function (selectedItem) {
$scope.selected = selectedItem;
}, function () {
$log.info('Modal dismissed at: ' + new Date());
});
可以看到它在这个Plunker中工作http://plnkr.co/edit/ro5Dnkg0p9wYWlMCRqlN?p=preview
相关文章:
- 在ES6 Promise中,我应该在解决/拒绝之前使用return吗
- 在promise中为回调添加超时并拒绝
- angular ui bootstrap:当模式关闭时,promise被解析/拒绝
- JavaScript Promise 解析并拒绝函数调用序列
- 带有拒绝调用和抛出错误的Promise构造函数
- Bluebird Promise.any() 提前拒绝
- 节点 js,使用带有 Q promise 的猫鼬不调用拒绝函数
- 在ES6 Promise中允许多次解析/拒绝的原因是什么
- 拒绝promise时停止代码执行
- AngularJS/Karma-测试函数返回已解决或拒绝的promise
- 当你想要所有结果而不管是否被拒绝时,用什么代替Promise.all()
- Dojo.request.post-返回的promise说"拒绝”;,但服务器似乎已经接受了请求
- Bluebird Promise.all-多个承诺完成了成功和拒绝的汇总
- Angular-返回$modal promise并拒绝它
- node.js Q promise不会通过拒绝处理程序传播异常
- 当action使用promise时,indexOf拒绝在值突变中工作
- 的承诺.all - resolve回调会被触发,尽管Promise被拒绝
- 稍后在TypeScript中解析或拒绝Promise
- 在promise .race中第一个promise被解析(拒绝)后执行是否结束
- new Promise和Promise的区别.在bluebird中解决/拒绝