我想打开一个模态,声明模态文件名,以及要在模态范围内使用的图像URL。例如。:
ng-click="showModal('screenshot','http://placehold.it/800x550')"
当我尝试以上内容时,出现以下错误:
Error: [$injector:unpr] Unknown provider: imageUrlProvider <- imageUrl <- ModalController
这是我正在尝试的代码-模态控制器:
hmwsApp.controller('ModalController', function($scope, close, imageUrl) {
$scope.imageUrl = imageUrl;
$scope.close = function(result) {
close(result, 500); // close after 500ms to allow for bootstrap to animate
};
});
主控制器:
hmwsApp.controller('mainController', ['$scope', '$http', '$rootScope', 'ModalService', function($scope, $http, $rootScope, ModalService) {
$scope.showModal = function(modalUrl, imageUrl) {
ModalService.showModal({
templateUrl: '/views/modals/' + modalUrl + '.html',
controller: "ModalController",
resolve: {
imageUrl: function () {
return imageUrl;
}
}
})
.then(function(modal) {
modal.element.modal();
modal.close.then(function(result) {
$scope.message = "Image shown " + result;
});
});
};
}]);
明显有什么问题吗?
最佳答案
您在这里做了什么:
hmwsApp.controller('ModalController', function($scope, close, imageUrl)
被
imageUrl
注入到控制器中。您要做的是在控制器方法内创建一个名为imageUrl的输入参数:
hmwsApp.controller('ModalController', function($scope) {
$scope.showModal = function(screenshot,imageUrl){
// do something
}
......
});
关于javascript - 将变量传递到函数中-Angular,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29668758/