2016-04-10 6 views
0

Ich bin neu zu angularjs und so Material, und ich habe Probleme, den mdDialog zu verwenden und kann keine Antwort finden. Wenn die Funktion aufgerufen wird, bleibt sie zurück. MdDialog ist nicht definiert.mdDialog kann Eigenschaft 'prompt' von undefined nicht lesen

Folgen der letzte Code versucht:

var corenotes = angular.module('corenotes',["ngAnimate", "ngAria", "ngMessages", 'ngMaterial', "ngMdIcons"]); 

corenotes.controller('BoardController',['$scope', '$mdDialog', function($scope, $mdDialog, $http) { 

[...] 

    $scope.showModal = function(ev, $mdDialog){ 
     // Appending dialog to document.body to cover sidenav in docs app 
     var confirm = $mdDialog.prompt() 
      .title('What would you name your dog?') 
      .textContent('Bowser is a common name.') 
      .placeholder('dog name') 
      .ariaLabel('Dog name') 
      .targetEvent(ev) 
      .ok('Okay!') 
      .cancel('I\'m a cat person'); 
     $mdDialog.show(confirm).then(function(result) { 
     $scope.status = 'You decided to name your dog ' + result + '.'; 
     }, function() { 
     $scope.status = 'You didn\'t name your dog.'; 
     }); 
    }; 


}]); 

Antwort

0

die $ mdDialog Entfernen von

$scope.showModal = function(ev, $mdDialog) { 

zu so etwas wie dieses

function showDialog($event) { 

ist die Dokumentation für $ mdDialog:

https://material.angularjs.org/latest/api/service/ $ mdDialog

+0

"$ mdDialog.prompt ist keine Funktion" –

+0

Haben Sie versucht, mit show statt prompt, da Prompt keine Funktion wie die Fehlermeldung suggeriert? – PmanAce

+0

Ich folge der Dokumentation, aber ich habe versucht, Show anstelle von Eingabeaufforderung zu verwenden, und jetzt funktioniert es, indem die Abhängigkeit und die Funktion entfernt werden –

Verwandte Themen