Angular UI中的$ dialog.messageBox()在哪里?

Sag*_*ani 10 angularjs angular-ui angular-ui-bootstrap

$dialog在AngularUI中找不到服务,我试图探索一个简单的messageBox()使用创建确认对话框$modal.也找不到.

有人可以建议我如何使用AngularJS/AngularUI创建一个简单的对话框(比如删除确认)?

先感谢您.

And*_*ger 20

$dialog服务被重构为ui-bootstrap的0.6.0$modal版本.来自的功能应该仍然可用,而不是通过.$dialog$modal

根据文档,您应该确保在页面中包含bootstrap的cssangular.js以及bootstrap-ui的JS,您可以从doc站点下载它.如果您只需要使用$modal服务而不是其他指令,我会查看"创建您自己的"链接.

如果这些文件包含在您的页面中,请确保角度模块的定义包含ui.bootstrap为依赖项.例如

var app = angular.module('myApp', ['ui.bootstrap']);
Run Code Online (Sandbox Code Playgroud)

如果这样做,那么您应该能够$modal在模块中注入服务,就像使用任何其他服务一样.

app.controller('myController', function($scope, $modal) {
    $scope.openModal = function() {
       // Can use $modal service as per examples in doc page
    };
});
Run Code Online (Sandbox Code Playgroud)

至于可靠的例子,文档页面在页面上和plunker中都有很好的例子(因此你可以使用它们)来表示每个服务和指令.我想在这里链接到plunker,但我似乎无法.

  • 是的,遗憾的是这不再存在,并且有一个关于添加迁移指南的[开放问题](https://github.com/angular-ui/bootstrap/issues/996).其中一个[评论](https://github.com/angular-ui/bootstrap/issues/996#issuecomment-25388935)有一个使用`$ modal`的示例服务可以做你想要的,否则你需要降级bootstrap-ui或使用相同的功能编写自己的服务. (6认同)