0

通常の Bootsrap モーダルではなく、UI Bootstrap モーダルを使用しようとしています。親コントローラーに $scope.DoIt = function() がありますが、モーダルから呼び出そうとしても何も起こりません。

私は何を間違っていますか?

親コントローラーの関数にどのようにアクセスしますか?

モーダルを開く方法は次のとおりです。

    applyConfirm: function() {

  if(self.showingExpenses !== true) {

    self.showingExpenses = true;
    var modalInstance = $modal.open({
      animation: true,
      templateUrl: 'applyConfirm.html',
      controller: function($scope, $modalInstance, expenses, jobsService, job) { //'ModalInstanceCtrl',

        angular.extend($scope, {
          expenses: expenses,
          job: job
        });

        $scope.close = function() {
          //self.showingExpenses = false;
          $modalInstance.close();
        };
      }
}
4

1 に答える 1

0

scopeに渡された構成を使用して$uibModal.open、モーダルの親スコープを設定できます。

$uibModal.open({
    scope: $scope
    // other properties, etc
})

Angular スコープの継承により、Doltメソッドが利用可能になるはずです

controller: function($scope, $uibModalInstance /*, etc */) {
    $scope.Dolt(); // this will call the parent scope method
于 2016-09-05T05:56:22.453 に答える