2017-02-19 9 views
9

Jestem początkującym materiałem AngularJs, chcę otworzyć "mdbottomsheet" i wcisnąć przycisk wewnątrz tego arkusza, po kliknięciu przycisku, otworzyć kolejny "arkusz mdbottoms", bez zamykania pierwszego "mdbottomsheet".Czy mogę otworzyć "mdbottomsheet" nad innym "mdbottomsheet" w materiałach Angularjs?

Jest kod HTML:

<div ng-controller="MyController"> 
    <md-button ng-click="openBottomSheet()"> 
    Open a Bottom Sheet! 
    </md-button> 
</div> 

Nie JS:

var app = angular.module('app', ['ngMaterial']); 
app.controller('MyController', function($scope, $mdBottomSheet) { 
    $scope.openBottomSheet = function() { 
    $mdBottomSheet.show({ 
    controller: 'BottomSheet', 
    template: '<md-bottom-sheet>Hello! 
      <md-button ng-click="openSecondBottomSheet()"> 
       Open Second Bottom Sheet! 
      </md-button></md-bottom-sheet>' 
    }); 
}; 
}); 

aw 'BottomSheet' regulatora:

var app = angular.module('app', ['ngMaterial']); 
app.controller('BottomSheet', function($scope, $mdBottomSheet) { 
    $scope.openSecondBottomSheet = function() { 
    $mdBottomSheet.show({ 
    controller: 'SecondBottomSheet', 
    template: '<md-bottom-sheet>Hello!</md-bottom-sheet>' 
    }); 
}; 
}); 

To jest mój kod, to działa, ale gdy " SecondBottomSheet "otwarty, pierwszy" BottomSheet "zamknięty! Chcę otworzyć "SecondBottomSheet" nad pierwszym "BottomSheet"!

Odpowiedz

4

The $mdBottomSheet.show() zwraca obietnicę, za pomocą której można sprawdzić, czy dolny arkusz został zamknięty. Możesz emulować to samo, stosując obietnicę zamknięcia pierwszego dolnego arkusza po kliknięciu przycisku i otworzeniu kolejnego dolnego arkusza. Gdy drugi dolny arkusz się zamknie, możesz ponownie otworzyć pierwszy dolny arkusz.

Powiązane problemy