angularjs bootstrap ui $modal – >仅在第一次显示

前端之家收集整理的这篇文章主要介绍了angularjs bootstrap ui $modal – >仅在第一次显示前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我创建了一个plunker来重新创建问题:
http://plnkr.co/edit/sPPB0Cq0PUg1jmzzZtXh

它包含一个带角度ui-bootsrap的迷你角度js应用程序.

> index.html – 包含js的主html文件和ng-view div.
> other.html,main.html – 视图
> app.js – 带有app声明的主角js文件.
> modal.js – 与模态相关的一些js东西.
我用我自己的服务包装$modal来响应a
通过显示模态并创建一个广播“show-modal”事件
将元素作为属性附加到的指令
发出/广播此事件.

问题:
我正在尝试使用$modal服务来打开模态窗口.
它打开,然后在我关闭之后,我再也无法打开它.
实际上,当试图再次打开时,它似乎无法打开.但是当导航到角应用程序中的另一个位置时,模态突然出现(或者如果你多次点击则为模态).

我有点丢失,文档并没有真正帮助我.
任何人都可以检查出来并告诉我我做错了什么?

解决方法

在回顾了模态确实起作用的一些情况之后,我想我在之前提到的同一个plunker上得到了一个解决方
http://plnkr.co/edit/sPPB0Cq0PUg1jmzzZtXh

你必须使用$modalInstance来.close()和.dismiss()模态.

文档建议可以使用注入的$close $dismiss函数,但使用这些函数会给我带来问题……

我按原样保留了问题并在新文件中实现了解决方案,因此您可以(根据您的意愿)查看两者.

—编辑—

如果所有都失败$scope.apply()(或$rootScope.apply())在发出信号打开模态后我尝试使用scope.apply并且它成功显示模态而不是在下一个周期(例如通过转到另一个页面触发)

猜你在找的Angularjs相关文章