2016-10-23 12 views
0

私はIonic2でアプリケーションを開発していますが、theme1.csstheme2.cssという2つのスタイルシートがあります。クリックしたdiv要素に基づいてスタイルシートを適用します

これは私が欲しいものです:2つのdivがあります。最初のdivをクリックすると、私のアプリケーションのすべてのページにtheme1.cssが適用されます.2番目のdivをクリックすると、すべてのページでtheme2.cssが使用されます。

これは私が方法setThemeいるmyPage.html myPage.ts

<div id="theme1" (click)="setTheme('theme1.css')">Apply Theme 1</div> 
<div id="theme2" (click)="setTheme('theme2.css')">Apply Theme 2</div> 

です:私はロード* .cssファイルについて知らない

setTheme(stylesheetName){ 
    // what should I write here?? 
} 
+0

hmmテーマはファイルを区切る必要がありますか?おそらく、あなたは両方のテーマを持つ単一の.scssファイルを持ち、本体要素のクラスを使用してtheme1またはtheme2を切り替えることができます。あなたの.scssファイルは、 'body.theme1 {// theme1 css rules} body.theme2 {// theme2 css rules} 'のようになります。 – sebaferreras

+1

@sebaferrerasあなたの解決策を考えてみましょう。私はクリックされたdivに基づいてボディクラスを変更する方法を理解していません – splunk

答えて

0
<div id="theme1" [ngClass]="theme" (click)="theme = 'theme1'">Apply Theme 1</div> 
<div id="theme2" [ngClass]="theme" (click)="theme = 'theme2'">Apply Theme 2</div> 

をしかし、クラスに応じて設定します。

+0

私はdivをクリックするとそのクラスが変更されますが、何が私はdivをクリックしたときにボディクラスを変更する場合は好きですか?私は[body.ngClass]で試しましたが、テンプレートエラーが発生しました – splunk

+0

この場合、私のアプローチはうまくいかないでしょう。あなたの質問はあまりにも明確ではありません;-) –

関連する問題