2017-03-02 59 views
4

我有一個現有的django項目,我通過/ static/path提供靜態文件。我正在將應用程序的一部分遷移到angular2,以便成爲該網站的特定移動版本。使用angular-cli在Angular中向靜態文件添加前綴路徑

<base href="/">添加到index.html加載靜態文件www.example.com/main.js在此獲取404。 將<base href="/static/">添加到index.html可以正確加載靜態文件,但是當應用程序啓動時,它會將url更改爲/ static /(我正在使用路由器),儘管我的url應該是/ order /。

是有使用基本href爲/但添加前綴腳本和樣式文件中使用的一種方式角CLI

使用的版本ng --version

@angular/cli: 1.0.0-rc.0 
node: 6.9.1 
os: win32 x64 
@angular/common: 2.4.9 
@angular/compiler: 2.4.9 
@angular/core: 2.4.9 
@angular/forms: 2.4.9 
@angular/http: 2.4.9 
@angular/platform-browser: 2.4.9 
@angular/platform-browser-dynamic: 2.4.9 
@angular/router: 3.4.9 
@angular/cli: 1.0.0-rc.0 
@angular/compiler-cli: 2.4.9 

回答

6

可以使用--deploy,網址前綴生成的靜態文件的路徑。 ng build -d /static/。它將生成的index.html前綴的js文件路徑與/static/這樣的:

<script type="text/javascript" src="/static/inline.bundle.js"></script> 

從幫助文檔:

--deploy-url (String) URL where files will be deployed. 
    aliases: -d <value>, --deployUrl <value>