2016-03-23 57 views
0

我想通過參數傳遞值到模態。出於某種原因,當我嘗試在控制器中訪問它時,此參數始終爲undefinedthis question的第二個答案是我正在構建的。爲什麼這個模態參數總是不確定的?

這是我的模態設置。請注意,$scope.evaluationResult已定義並具有有效內容。

$scope.showEvaluationResult = function() { 
    var modalInstance = $modal.open({ 
     templateUrl: 'evaluation-result/evaluation-result-dlg.html', 
     controller: 'EvaluationResultDialogCtrl', 
     windowClass: 'evaluation-result-dlg', 
     size: 'lg', 
     resolve: { 
      evaluationResult: function() {  
       return $scope.evaluationResult; 
      } 
     } 
    }); 
    setupKeyHandling(modalInstance); 
} 

這裏是我的控制器:

/** 
* The controller for displaying evaluation results. 
*/ 
annotatorApp.controller('EvaluationResultDialogCtrl', ['$scope', '$modal', '$modalInstance', '$http', 
    function ($scope, $modal, $modalInstance, $http, evaluationResult) { 
     $scope.trainingLog = { 
      text: '' 
     }; 

     $scope.close = function() { 
      $modalInstance.close(); 
     }; 

     $scope.evaluationResult = evaluationResult; // Always undefined 

    }]); 

有什麼問題嗎?

+2

我看不到' 'evaluationResult''您的注入陣列內 - '[' $範圍 ' '$模式',' $ modalInstance','$ http','。 –

+0

@SlavaUtesinov是的,就是這樣..我是AngularJS的新手..其實我只需要從另一個同事那裏趕上一個項目。 ^^謝謝:) – displayname

回答

1

你忘了把它注射陣列,應該是:

annotatorApp.controller('EvaluationResultDialogCtrl', ['$scope', '$modal', '$modalInstance', '$http', 'evaluationResult', function ($scope, $modal, $modalInstance, $http, evaluationResult) {

+1

它應該在注入數組中的單引號中,但是:''evaluationResult''。 – Lex

相關問題