好像我的mdDialog弹出窗口不能正常工作。
function () {
$mdDialog.show({
templateUrl: 'CameraPopup.html',
clickOutsideToClose: true
}).then(function (answer){ //do something
//with answer
})}
模板如下所示:
<md-dialog >
<form>
<md-dialog-actions layout="column" >
<span flex></span>
<md-button ng-click="answer('camera')">
Open Camera
</md-button>
<md-divider></md-divider>
<md-button ng-click="answer('gallery')">
Open Gallery
</md-button>
</md-dialog-actions>
</form></md-dialog>
我知道问题在于它返回的承诺,但我无法理解为什么它不起作用。
答案 0 :(得分:0)
添加一个控制器。将该控制器传递到$mdDialog.show
。将answer
方法写入控制器。
function () {
$mdDialog.show({
controller: DialogController,
templateUrl: 'CameraPopup.html',
clickOutsideToClose: true
}).then(function (answer){ //do something with answer
});
}
<强>控制器强>
function DialogController($scope, $mdDialog) {
$scope.answer = function(answer) {
$mdDialog.hide(answer);
};
}
});