[英]error injecting $dialog in angularjs
我想顯示一個來自angularjs controller
的dialog
。 我正在使用angular-ui和angular-strap
Error: [$injector:unpr] http://errors.angularjs.org/1.2.0rc1/$injector/unpr?p0=%24dialogProvider%20%3C-%20%24dialog
at Error (<anonymous>)
at https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular.min.js:6:450
at https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular.min.js:31:145
at Object.c [as get] (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular.min.js:28:296)
at https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular.min.js:31:213
at c (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular.min.js:28:296)
at d (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular.min.js:28:473)
at Object.instantiate (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular.min.js:30:123)
at https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular.min.js:58:153
at https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular.min.js:46:383
angularJs { resource url:'https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular.min.js' }
angularUI {
dependsOn 'angularJs'
dependsOn 'jquery'
dependsOn 'googleMaps'
resource url:'https://cdnjs.cloudflare.com/ajax/libs/angular-ui/0.4.0/angular-ui.min.css',attrs:[rel: "stylesheet", type:'css']
resource url:'https://cdnjs.cloudflare.com/ajax/libs/angular-ui/0.4.0/angular-ui.min.js'
resource url:'https://cdnjs.cloudflare.com/ajax/libs/angular-ui/0.4.0/angular-ui-ieshiv.min.js'
}
angularStrap {
dependsOn 'angularJs'
dependsOn 'bootstrapJs'
dependsOn 'datepicker'
resource url: 'https://cdnjs.cloudflare.com/ajax/libs/angular-strap/0.7.4/angular-strap.min.js'
resource url: 'js/angular-strap/datepicker.js'
resource url: 'js/angular-strap/timepicker.js'
}
userJs { resource url:'js/user.js' }
<html ng-app="user">
<r:require modules="bootstrapJs" />
<r:require modules="userJs" />
<r:require modules="angularJs" />
</html>
function EncouragementController($scope, $http, $dialog, encouragementService) {
//
$scope.showMessage = function(message){
var title = 'Alert';
var msg = message;
var btns = [{result:'cancel', label: 'Cancel'}, {result:'ok', label: 'OK', cssClass: 'btn-primary'}];
$dialog.messageBox(title, msg, btns)
.open()
.then(function(result){
});
};
}
EncouragementController.$inject = [ '$scope', '$http', '$dialog', 'encouragementService' ];
var user = angular.module('user', [ 'ui', '$strap.directives' ]);
我關注了角度js未知提供程序 ,但是沒有答案對我有用。
AngularStrap沒有$dialog
服務。 如果要使用AngularStrap的模態服務,請將其更改為$modal
。
AngularUI確實有$dialog
服務。 但是要使用它,必須將ui.bootstrap
模塊鏈接到您的應用程序。
angular.module('user', [ 'ui', '$strap.directives', 'ui.bootstrap']);
$ modal和$ dialog具有不同的API,因此您必須確定要使用哪個API。
現在,重要的是要注意AngularStrap和AngularUI在功能上有很多重疊(例如,兩者都提供導致上述混亂的模態服務)。 您是否必須同時使用兩者?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.