angularjs – angular material如何将数据传递给预设对话框

前端之家收集整理的这篇文章主要介绍了angularjs – angular material如何将数据传递给预设对话框前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Angular Material,我使用$mdDialogProvide创建了一个简单的预设对话框:

angular.module('starterApp').config([
  '$mdDialogProvider',function ($mdDialogProvider) {
    $mdDialogProvider.addPreset('warning',{
      options: function () {
        return {
          template:
          '<md-dialog>' +
          '{{dialog.warning}}' +
          '</md-dialog>',controllerAs: 'dialog',theme: 'warning'
        };
      }
    });
  }
]);

我想在调用它时传递一条警告信息.我试图传递一条消息,例如:

$mdDialog.show(
      $mdDialog.warning({
        locals: {
          warning: 'Warning message'
        }
      })
    );

但是不起作用.

实际上我检查了很多解决方案,但没有一个能正常工作.文档中也没有这样的例子.

是否可以将某些日期传递给预设对话框?

解决方法

这是一种方法CodePen

标记

<div ng-controller="AppCtrl" ng-cloak="" ng-app="MyApp">
  <md-button ng-click="showDialog()">Show Dialog</md-button>
</div>

JS

angular.module('MyApp',['ngMaterial','ngMessages'])

.config([
  '$mdDialogProvider',{
      options: function () {
        return {
          template:
          '<md-dialog aria-label="Dialog">' +
          '{{warning}}' +
          '</md-dialog>',controller: DialogController,theme: 'warning',clickOutsideToClose: true
        };
      }
    });

    function DialogController($scope,$mdDialog,locals) {
      console.log(locals);
      $scope.warning = locals.warning;
    }
  }
])

.controller('AppCtrl',function($scope,$mdDialog) {
  $scope.showDialog = function () {
    $mdDialog.show(
      $mdDialog.warning({
        locals: {
          warning: 'Warning message'
        }
      })
    );
  }
});

猜你在找的Angularjs相关文章