2016-06-24 59 views
1

我重新編譯了sails.js資產流以滿足我的需求。我將我的公共資產存儲在/ assets/dist中。sails.js - 將公用文件夾更改爲不同於.tmp/public

是否有任何簡單的方法來配置sails應用程序使用我自己的公用文件夾,而不是默認的「/.tmp/public」?

我知道可以通過/config/local.js來配置這個選項,但是我想在其他地方配置它(如果可能的話),所以它不會僅與當前機器相關,它將包含在git倉庫中。

回答

2

你可以找到幾個不同的答案在這裏:https://github.com/balderdashy/sails/issues/709

看起來最簡單的方法是添加以下內容到配置/ local.js文件:

path: {tmp: ..., public: ...} 

更新:

導航到:node_modules/sails/lib/app/configuration/index.js可以找到默認的paths設置。如果您滾動接近該文件的底部,你會看到:

// Built-in path defaults 
paths: { 
    tmp: path.resolve(appPath, '.tmp') 
}, 

如果您在您的名爲paths.jsconfig文件夾中的新文件,該代碼添加到它,你可以覆蓋/添加更多的默認路徑風帆應用:

module.exports.paths = { 
    "tmp" : "assets/dist", 
    "public" : "assets/dist" 
}; 
+0

感謝答覆。但我正在尋找其他方式。因爲config/local.js未包含在存儲庫中,所以我想爲所有環境更改全局狀態。 – rerich

+0

您可以嘗試編輯核心文件。從你的項目根目錄開始,轉到'node_modules/sails/lib/app/configuration/index.js'附近,有一個路徑對象將'tmp'分配給appPath'.tmp'。 – Nitsew

+0

感謝您將我指向該文件。我最終能夠解決這個問題。我創建了內容爲'module.exports.paths = {「tmp」:「assets/dist」,「public」:「assets/dist」}的新配置文件(config/paths.js),它最終爲我提供了資源。你能否更新你的答案,以便我能接受它? – rerich

1

以前的回答顯然不能對sails.js最新版本的工作According this除非您使用.sailsrc,否則無法更改路徑。

如:

{ 
    "paths": { 
     "tmp": "dist/assets", 
     "public": "dist/assets" 
    } 
} 
相關問題