我有一个项目数组,我想在对话框中输出。我没有收到错误,但它也没有。
$scope.showDialog = function (ev) {
$mdDialog.alert({
controller: 'DialogController',
controllerAs: 'DiaCtrl',
templateUrl: 'softwareused.tmpl.html',
parent: angular.element(document.body),
targetEvent: ev,
locals: {
items: cvLibsUsed
}
});
};
这应该按照指出here打开警告对话框 当我尝试demo code时,我收到了错误,那就是"警告"没有定义。
模板如下所示:
<md-dialog aria-label="Software used">
<md-dialog-content>
<h2>Software used</h2>
<ul>
<li ng-repeat="cur in locals.items"><a ng-href="{{cur.url}}">{{cur.desc}}</a> - (<a
ng-href="{{cur.licenceUrl}}">{{cur.licence}}</a>
)
</li>
</ul>
</md-dialog-content>
<md-dialog-actions layout="row">
<md-button class="md-icon-button" ng-click="close()" aria-label="Close dialog" md-autofocus>
Close
</md-button>
</md-dialog-actions>
知道我在这里做错了吗?没有AngularJS错误,没有对话框。
谢谢:)
答案 0 :(得分:4)
就我而言,我可以跟踪调试器中$ mdDialog.show()方法调用的调用,并且控制台中没有出现错误,但没有出现对话框。它被证明是一个CSS问题,我使用的模板包含的元素的z-index高于构成MD对话框的组件所使用的z-index,有效地模糊了对话框消息。
以下CSS规则更新是解决问题的一种方法(基于我不想触及模板本身):
void*
答案 1 :(得分:3)
您应该使用 $mdDialog.show
而不是 $mdDialog.alert
$scope.showDialog = function (ev) {
$mdDialog.show({
controller: 'DialogController',
controllerAs: 'DiaCtrl',
templateUrl: 'softwareused.tmpl.html',
parent: angular.element(document.body),
targetEvent: ev,
locals: {
items: cvLibsUsed
}
});
以下是mdDialog
示例