3

我有一个 mddialog 尝试使用 md-colors 在对话框中设置 div 的背景颜色。但是它不尊重当前主题,而是默认为蓝色主题。

md-colors="{backgroundColor: 'primary'}"

这是一个已知的问题?有解决方法吗?

使用版本 1.1.1

4

1 回答 1

1

这有效 - CodePen

标记

<div ng-controller="TasksController as vm" class="md-padding" ng-cloak="" ng-app="app">
   <md-button class="md-primary md-raised" ng-click="vm.show($event)">
      Custom Dialog
    </md-button>

  <script type="text/ng-template" id="test.html">
    <md-dialog aria-label="Test" layout-margin layout="column" layout-align="center center">
        <div style="width:100px; height:100px;"  md-colors="::{background: 'altTheme-primary-700'}"></div>
    </md-dialog>
  </script>
</div>

JS

angular.module('app',['ngMaterial', 'ngMessages', 'material.svgAssetsCache'])

.config(function($mdThemingProvider) {
  $mdThemingProvider.theme('altTheme')
    .primaryPalette('purple')

  $mdThemingProvider.setDefaultTheme('altTheme');
})

.controller('TasksController', function($scope, $mdDialog) {
  var vm = this;
  vm.show = function(ev) {
    $mdDialog.show({
      templateUrl: 'test.html',
      parent: angular.element(document.body),
      targetEvent: ev,
      clickOutsideToClose:true
    });
  };
});
于 2016-09-05T10:21:38.290 回答