- Angular UI的Modal 在按照官方文档写的时候会报如下错误
var ModalDemoCtrl = function ($scope, $modal, $log) { $scope.items = [‘item1‘, ‘item2‘, ‘item3‘]; $scope.open = function (size) { var modalInstance = $modal.open({ templateUrl: ‘myModalContent.html‘, controller: ModalInstanceCtrl, size: size, resolve: { items: function () { return $scope.items; } } }); modalInstance.result.then(function (selectedItem) { $scope.selected = selectedItem; }, function () { $log.info(‘Modal dismissed at: ‘ + new Date()); }); }; };// Please note that $modalInstance represents a modal window (instance) dependency.// It is not the same as the $modal service used above.var ModalInstanceCtrl = function ($scope, $modalInstance, items) { $scope.items = items; $scope.selected = { item: $scope.items[0] }; $scope.ok = function () { $modalInstance.close($scope.selected.item); }; $scope.cancel = function () { $modalInstance.dismiss(‘cancel‘); }; };
[$injector:unpr] Unknown provider: $modalInstanceProvider <- $modalInstance
google了一下,发现官方有人已经报过一个bug
官方解释是:
The problem was that you were specifying a controller in 2 places - when opening a modal and inside a template - this is not needed. Remove ng-controller from a template and things will work as expected:
原来,在写modal option的时候已经制定了Controller, 就没必要在template里面加ng-controller制定controller了
Angular js开发的各种坑(持续更新中。。。)
时间: 2024-12-29 11:25:05