如何将参数传递给Bootstrap UI模式函数来设置模板?

时间:2016-08-15 20:12:02

标签: angularjs parameters callback bootstrap-modal angular-template

我正在使用Angular和Bootstrap UI,并尝试使用依赖于if / else逻辑的模板打开模式。当我传递函数以打开模板的'template'属性的参数时,它不使用传递给函数回调的参数。我在控制台中收到此错误: “需要模板或templateUrl选项之一” 如果我硬编码文件路径,模态打开就好了。只有在我传入参数时才会出现此错误。

angular.module('butterflyappApp').controller('YelpapiCtrl', ['$scope', 'MyYelpAPI', 'googlemapsservice', 'CheckGeo',
  '$uibModal',
  function($scope, MyYelpAPI, googlemapsservice, CheckGeo, $uibModal) {
    var vm = this;
    vm.open = function(template) {
      var modalInstance = $uibModal.open({
        templateUrl: template,
        controller: 'ModalCtrl as vm'
      });
    };

    $scope.checkGeoClick = function() {
      if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(function(position) {
          var pos = {
            lat: position.coords.latitude,
            lng: position.coords.longitude
          };
          CheckGeo.checkerYelp(latChecker, longChecker);
          $scope.testStuff = CheckGeo.test();
          if (pos.lat.toFixed(3) === $scope.testStuff.newLatChecker && pos.long.toFixed(3) === $scope.testStuff
            .newLongChecker) {
            console.log('you win');
            vm.open(winningMoal);
          } else {
            console.log('/views/modal-view-winning.html');
            vm.open('/views/modalview.html');
          }
        });
      };
    };
  }
]);

0 个答案:

没有答案