0

Ich baue eine Web-App mit eckigem Material. Anfangs fing ich an, nur an einem Thema zu arbeiten. Später werden meine Anforderungen geändert, um ein anderes Thema in einigen UI-Komponenten zu verwenden. Wenn ich versuche, ein neues Thema anzuwenden, d. H. "Limette". Aber es gilt für die Symbolleiste.Angular Material Thema Problem mit SetDefaultTheme-Methode?

Das Problem ist mit $mdThemingProvider.setDefaultTheme('indigo'); Wenn ich die setDefaultTheme-Methode entfernen, funktioniert es, aber dafür muss ich mehr Code in vorhandenen Dateien ändern.

Ich brauche mit der Standardmethode umgehen und andere Thema verwenden.

hier ist meine code.

Antwort

0

Ich denke, Sie die Uhr-Tag in Ihrem Code verpasst

$mdThemingProvider.alwaysWatchTheme(true); 

Sie haben auch md-theme-watch in Ihrer Vorlage hinzuzufügen.

<div> 
    <md-button ng-click="dynamicTheme = 'default'">Default</md-button> 
    <md-button ng-click="dynamicTheme = 'altTheme'">altTheme</md-button> 
    <div md-theme="{{ dynamicTheme }}" md-theme-watch> 
    <md-button class="md-primary">I'm dynamic</md-button> 
    </div> 
</div> 

Ich habe Ihre Plunker

aktualisiert http://plnkr.co/edit/dEIGT3y1l85TOH1bKdMD?p=preview

Sie die Dokumentation hier

https://material.angularjs.org/latest/Theming/04_multiple_themes

lesen