2017-03-16 134 views
0

我發展的角度JS 2.0的應用程序。對於捆綁,我使用WebPack,並在WebPack中定義了可在整個應用程序中訪問的API路徑。指定API路徑

new webpack.DefinePlugin({ 
    'process.env':{ 
    'NODE_ENV': JSON.stringify('development'), 
    'API_URL': JSON.stringify('http://10.28.83.123/nb-legal/api/') 
} 

但問題是,當我準備分配構建,我不能更改後的API網址。如果我想改變api路徑,是否有一種方式可以在分發之後再輕鬆地做到這一點,而不是重新構建應用程序。

問候,

回答

0

一旦API_URL變量是在你的包中定義它不能改變。 DefinePlugin實際上並未爲您聲明一個變量,它只是用該值替換該變量的所有出現。例如,如果你定義API_URL'http://10.28.83.123/nb-legal/api/'和你的源代碼看起來是這樣的

var someURL = API_URL + "get_items"

通過的WebPack生產組合中的代碼看起來像這樣

var someURL = 'http://10.28.83.123/nb-legal/api/' + "get_items"

所以最好你的選擇是在代碼中創建另一個全局變量,像

window.API_URL = API_URL;

然後你就可以修改該變量。