Bir yönergenin bağlantı işlevine bir Angular Material dialog koymaya çalışıyorum. Kavramsal olarak, bunun neden mümkün olmayacağını göremiyorum. Dokümanlara göre, $mdDialog.show
kapsamı ve $mdDialog.hide();
, $mdDialog.show
nesnesi tarafından tanımlanan bir denetleyicide duruyor. Ben diyalog penceresini açabildim - ve closeModal()
(exec.log tarafından söyleyebilirim) olsa bile, $mdDialog.hide()
asla yürütmez ve modal asla gizlenmez.
angular.module('app', ['ngMaterial'])
.directive('addLayer', ['$mdDialog', function($mdDialog) {
return {
template: '<h1 ng-click="openDialog()">Open Dialog</h1><div>alert: {{alert}}</div>',
scope: {},
link: function(scope) {
scope.alert = '';
scope.addLayerDialog = function() {
$mdDialog.show({
parent: angular.element(document.body),
templateUrl: {...},
controller: function($scope, $mdDialog) {
$scope.hide = function() {
$mdDialog.hide();
};
$scope.cancel = function() {
$mdDialog.cancel();
};
$scope.answer = function(answer) {
console.log($mdDialog.hide('answer'));
$mdDialog.hide(answer);
};
}
}).then(function(answer) {
scope.alert = 'You said the information was "' + answer + '".';
}, function() {
scope.alert = 'You cancelled the dialog.';
});
};
}
};
}]);
Bu neden çalışmıyor? Bir yönerge içinden mdDialog
modelini tanımlamak mümkün değil mi? İşte
bir Plnkr ben müdahele ettik edilir:
http://plnkr.co/edit/qVczPkuZgtL2CCtLRFrH?p=preview
Teşekkür bir demet. Bu beni birkaç saatliğine delirtiyor.
Yardımın için teşekkürler! Ne yazık ki, hata hala devam ediyor -> http://plnkr.co/edit/qVczPkuZgtL2CCtLRFrH?p=preview –
ben css sınıfını kaldırdığımda göründüğüm gibi yorumumu düzenledim – kwangsa
Başar. Bunu nasıl anladın? Bunu bir milyon yılda anlayamazdım. Çok teşekkürler. –