我在尝试实现Bootstrap Modal窗口时一直收到此错误。可能是什么原因造成的?我已经从http://angular- ui.github.io/bootstrap/#/modal复制/粘贴了所有内容。
当您为控制器,服务等编写依赖项时,还没有创建或包含该依赖项,就会发生这种错误。
在这种情况下,$modal不是已知的服务。听起来您在引导angular时没有将ui- bootstrap作为依赖项传递。angular.module('myModule', ['ui.bootstrap']);另外,为安全起见,请确保您使用的是最新版本的ui-bootstrap(0.6.0)。
$modal
angular.module('myModule', ['ui.bootstrap']);
该错误在版本0.5.0中引发,但更新到0.6.0确实会使$ modal服务可用。因此,更新至版本0.6.0,并确保在注册模块时需要ui.boostrap。
回复您的评论: 这就是注入模块依赖项的方式。
<!-- tell Angular what module we are bootstrapping --> <html ng-app="myApp" ng-controller="myCtrl">
js:
// create the module, pass in modules it depends on var app = angular.module('myApp', ['ui.bootstrap']); // $modal service is now available via the ui.bootstrap module we passed in to our module app.controller('myCtrl', function($scope, $uibModal) { });
该$modal服务已重命名为$uibModal。
$uibModal
使用$ uibModal的示例
// create the module, pass in modules it depends on var app = angular.module('myApp', ['ui.bootstrap']); // $modal service is now available via the ui.bootstrap module we passed in to our module app.controller('myCtrl', function($scope, $uibModal) { //code here });