2017-10-18 50 views
0

我是AngularJS Material的新手,並創建了一個鏈接,打開一個包含表單的對話框。現在,當有人點擊鏈接時,會打開一個新表單,但如果該人員已經有記錄,我希望鏈接可以拉出現有表單,以便他們進行編輯。我需要改變什麼才能發生這種情況?拉起現有的表單mdDialog

我的HTML:

<md-icon class="material-icons md-72" ng-click="showAdvanced($event)" role="button">assignment</md-icon> 

我的客戶端腳本:

$scope.showAdvanced = function(ev) { 
    $mdDialog.show({ 
     controller: DialogController, 
     templateUrl: 'material-modal', 
     parent: angular.element(document.body), 
     targetEvent: ev, 
     clickOutsideToClose:true, 
      preserveScope: true, 
      scope:$scope 
    }) 
    .then(function(answer) { 
    }; 

回答

1

您可以將參數傳遞給你的模式,並使用它們進入模式。

在例子中,如果有關的人在你範圍註冊爲user,你可以通過他使用locals

$scope.showAdvanced = function(ev) { 
    $mdDialog.show({ 
     controller: DialogController, 
     templateUrl: 'material-modal', 
     parent: angular.element(document.body), 
     targetEvent: ev, 
     clickOutsideToClose:true, 
     preserveScope: true, 
     scope:$scope, 
     locals: { person: $scope.user } 
    }) 
    .then(function(answer) { 
    }; 

然後,在模式的DialogController你將能夠檢索你的參數。

function DialogController($scope, $mdDialog, person) { 
    // Affect to the current scope your param 
    $scope.person = person; 
    // Actions with this person 
    }