2017-04-16 47 views
0

在組件的CSS鏈接圖像看起來是這樣的:角CLI:前綴,以圖像的路徑到CSS

background: url("/assets/map.jpg"); 

,但我需要在生產CSS路徑,圖像將可以解決這樣的:

background: url("/static/assets/map.jpg"); 

Angular CLI可以做到這一點嗎?

回答

1

您可以使用isDevMode與ngClass。假設你的css如下所示

.bg-dev { 
    background: url("/assets/map.jpg"); 
} 

.bg-prod { 
    background: url("/static/assets/map.jpg"); 
} 

使用ngClass在這兩個類之間切換。

<some-element [ngClass]="{'bg-dev': devMode , 'bg-prod': !devMode}">...</some-element> 

,並在組件的答案

import { isDevMode } from '@angular/core'; 

export class AppComponent { 
    devMode:boolean = false; 

    constructor() { 
    this.devMode = isDevMode(); 
    } 
} 
+0

謝謝,但如果是有很多這些CSS類的應用程序中的那麼邏輯就會很複雜。我認爲這個案例需要後處理CSS。 – karavanjo

+0

不客氣。另一種解決方案是使用gulp任務爲dev和prod生成多個資產文件夾。 – digit