【问题标题】:How can I pass a parameter to a Bootstrap UI modal function to set a template?如何将参数传递给 Bootstrap UI 模态函数以设置模板?
【发布时间】:2016-08-15 20:12:02
【问题描述】:

我将 Angular 与 Bootstrap UI 一起使用,并尝试使用依赖于 if/else 逻辑的模板打开模式。当我将函数传递给打开模式的“模板”属性的参数时,它不使用传递给函数回调的参数。我在控制台中收到此错误: “模板或 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');
          }
        });
      };
    };
  }
]);

【问题讨论】:

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


    【解决方案1】:
    vm.open(winningMoal);
    

    您确定您使用的是正确的变量名吗?我在代码中的任何地方都没有看到名为 winningMoal 的变量

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-26
      • 1970-01-01
      • 2011-09-14
      • 2011-11-15
      • 1970-01-01
      • 2016-05-17
      • 1970-01-01
      相关资源
      最近更新 更多