首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从指令启动parent上的modal

从指令启动parent上的modal
EN

Stack Overflow用户
提问于 2016-03-18 02:00:10
回答 1查看 168关注 0票数 1

我有一个带有ui.bootstrap模式的视图,它有自己的控制器。

在视图中,我有一个指令,它生成许多具有惟一ID的按钮。

我希望能够单击生成的按钮之一,并调用主视图的控制器来启动模式。

下面是主要的视图模块:

代码语言:javascript
运行
复制
/* global angular */

angular.module('my.jobs', [
  'ui.router',
  'ui.bootstrap'
])

.controller('DashboardJobsCtrl', function     DashboardJobsController($rootScope, $scope, $log, $state, $modal) {

  var self = this;

  angular.extend(this, {

displayReceipt: function(jobId) {

  var modalInstance = $modal.open({
    animation: true,
    templateUrl: 'receiptModal.html',
    size: 'lg',
    controller: function($scope, $modalInstance, jobsService) {

      //CODE HERE FOR ADDING VALUES TO THE MODAL...


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

以下是指令:

代码语言:javascript
运行
复制
angular.module('jobView', ['ui.router', 'ui.bootstrap'])

.directive('jobView', function($compile, $http, $templateCache, DOMAINS) {

  return {
    restrict: 'E',
    scope: {
      job: '=',
      view: '@'
},
template: 'myTemplate.html',
link: function($scope, element, attrs) {

  //ASSUME THERE IS CODE HERE FOR GENERATING UNIQUE ID FOR JOBS


  //NEXT LINE I WANT TO CALL MODAL FROM THE MAIN VIEW MODULE

  $scope.displayReceipt('jobId')

    }
  };
});

我知道这是一个简单的作用域问题,但我不能建立联系,这让我发疯。

EN

回答 1

Stack Overflow用户

发布于 2016-03-18 03:25:46

这是一个完美的例子。calling method of parent controller from a directive in AngularJS

我已经更新了下面的示例。

代码语言:javascript
运行
复制
<job-View updateParent='displayReceipt()'></job-View>
angular.module('jobView', ['ui.router', 'ui.bootstrap'])

.directive('jobView', function($compile, $http, $templateCache, DOMAINS) {

  return {
    restrict: 'E',
    scope: {
    job: '=',
      view: '@',
      updateParent:'&'
},
template: 'myTemplate.html',
link: function($scope, element, attrs) {

  //ASSUME THERE IS CODE HERE FOR GENERATING UNIQUE ID FOR JOBS
  //NEXT LINE I WANT TO CALL MODAL FROM THE MAIN VIEW MODULE

$scope.displayReceipt('jobId')

    }
  };
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36068313

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档