我有一个控制器,我在其中定义了一个函数及其模板。这是一个需要弹出的模态。 mymodal.html没有弹出模式和拒绝访问。
我的控制器/应用程序:
angular.module('myApp').controller('MyCtrl',function (
...
...
...
$scope.removeComment = function (reply) {
var myModalInstance = $modal.open({
scope: $scope,
templateUrl: 'mymodal.html',
controller: function ($scope, $modalInstance, reply) {
在我包含的模板中:
<div ng-app="myApp" ng-controller='MyCtrl'>
有什么不对?
答案 0 :(得分:1)
我认为问题出在您的controller
函数中:我认为reply
未定义。如果你打开控制台,我想你会看到这样的东西:
Error: [$injector:unpr] Unknown provider: replyProvider <- reply
如果你想在你的控制器中注入一些东西,你可以写一些服务。
顺便说一句,如果您打算使用一些缩小器,您会看到错误,因为当您通过这种方式定义controller
并缩减代码时 - 您的注射也将被缩小。
更好的方法是做这样的事情:
var app = angular.module('app', ['ui.bootstrap']);
app.controller('MyCtrl', ['$scope', '$modal', function ($scope, $modal) {
$scope.removeComment = function (reply) {
var myModalInstance = $modal.open({
scope: $scope,
templateUrl: 'mymodal.html',
controller: 'modalController',
...
});
};
/* SOME CODE HERE */
}]);
和
app.controller('modalController', ['$scope', '$modalInstance', function ($scope, $modalInstance) {
/* SOME LOGIC HERE */
}]);