在Angular UI-Bootstrap中“关闭”模态和“关闭”模态有什么区别?

时间:2013-11-02 15:07:26

标签: angularjs angular-ui angular-ui-bootstrap

“解雇”模态和“关闭”模态有什么区别?

close(result) - a method that can be used to close a modal, passing a result
dismiss(reason) - a method that can be used to dismiss a modal, passing a reason

2 个答案:

答案 0 :(得分:82)

答案在文档中,就在您引用的两行之后:

  

open方法返回一个模态实例,一个具有以下属性的对象:

     
      
  • close(result) - 一种可用于关闭模态,传递结果的方法
  •   
  • dismiss(reason) - 一种可用于解除模态,传递理由的方法
  •   
  • 结果 - 在关闭模态时解决的承诺,在解除模态时拒绝
  •   

这里重要的是承诺会发生什么。接近,承诺得到解决 - 基本上,“成功”回调激发了。在解雇时,承诺被拒绝,因此运行“失败”回调。

答案 1 :(得分:1)

我发现如果来自关闭模态的用户(例如返回到模态后面的状态并调用state.go(' ^')),则最好使用模态的解除。 ,通过$ state.go或ui-sref更改状态时使用模态的关闭。

这样你可以使用result承诺做不同的事情,具体取决于发生的事情。

result.then(function() { /* state change via ui-sref */ })

result.catch(function() { /* user closed modal */ })