5

Ich versuche den mdPanel-Dienst zu verwenden, einen Teil des Angular-Material-Frameworks, um Popups für meine App zu erstellen. Ich bin in der Lage, den Dienst zum Laufen zu bringen, hatte aber eine Idee, eine Anweisung an den Dienst zu übergeben, sodass ich ein dynamisches Formularelement haben kann, das ich anzeigen kann. Jedoch, nach einer ausführlichen Durchsicht der documentation, und ein paar Google-Suchen, kann ich nicht scheinen, einen durchführbaren Weg zu finden, dies zu erreichen.Eine Richtlinie an das Angular-Material übergeben mdPanel-Dienst

Ich bin etwas neu zu Angular, also entschuldige ich mich, wenn das offensichtlich ist. Danke für die Einblicke, die hier gegeben werden können.

Antwort

3

Übergeben Sie die Formularanweisung als Vorlage. Wenn Sie also eine Direktive wie diese erstellt haben,

angular.module('myApp') 
.directive('myAwesomeFormDirective', [function() { 
    return {   
     templateUrl: 'some/path/some.html', 
     controller: "SomeFormController" 
    }; 
}]) 

Ihre mdPanel-Konfigurationsoption sieht ungefähr wie unten gezeigt aus. Sie können beliebig andere Optionen konfigurieren, aber "template" sollte auf die entsprechende Elementrichtlinie gesetzt werden.

var config = { 
    attachTo: angular.element(document.body), 
    disableParentScroll: this.disableParentScroll, 
    template: '<my-awesome-form-directive></my-awesome-form-directive>', 
    hasBackdrop: true, 
    panelClass: 'demo-dialog-example', 
    position: position, 
    trapFocus: true, 
    zIndex: 150, 
    clickOutsideToClose: true, 
    escapeToClose: true, 
    focusOnOpen: true 
    };