首页 > 代码库 > Angular js开发的各种坑(持续更新中。。。)

Angular js开发的各种坑(持续更新中。。。)

  1.  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

#1549


官方解释是:

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了