19

AngularJS Material は、md-theme-style属性を持つ複数 (約 30) のスタイル タグを挿入します。ある種のパフォーマンス チューニングだと思いますが、むしろ自分でやりたいと思います。この厄介な方法で HTML を汚染する外部フレームワークは必要ありません。スタイルタグを取り除く方法について何か考えはありますか?

4

3 に答える 3

0

これが質問に答えるかどうかはわかりませんが<style/>、ページの上部からすべての要素を完全に削除するために、次のことを行いました。

angular.module( 'myApp', ['ngMaterial'] )
   .config( function( $mdThemingProvider, $provide ) {
       $mdThemingProvider.theme('myTheme')
           .primaryPalette('blue')
           .accentPalette('green')
           .warnPalette('yellow');
       $mdThemingProvider.generateThemesOnDemand(true);
       $provide.value('themingProvider', $mdThemingProvider);
    });

これにより、すべての要素が正常に削除されました。

今、それらを生成したいときは、メインコントローラー内でこれを呼び出します。

angular.module('myApp').controller('MyCtrl', function( themingProvider ){
    themingProvider.reload('myTheme'); 
    // pretty sure it's themingProvider.generateTheme('myTheme')
    // but I ended up refactoring this workaround out, anyway.
});

答えはこの質問に基づいています。

于 2016-06-28T22:29:55.070 に答える