簡體   English   中英

將路由快速拆分為單獨的文件

[英]Express & splitting routes into separate files

我有一個遵循標准Express 4格式的快速應用程序。 即,依賴於頂部,然后是app config,然后是路由,最后是listen。

我正在嘗試將我的路由分離成分類文件(例如routes / authentication.js)但是應用程序沒有通過依賴項,因此當我運行node app.js ,應用程序會中斷,因為CLI說護照不是'在routes / authentication.js中定義,但它不是,因為它在app.js的頂部定義了所有其他依賴項。

我想我的問題是我如何才能“共享”依賴關系,所以我不必在每個文件的頂部列出它們? 這就是我需要單獨的文件:

app.js

require('./app/routes/authentication')(app);

路線/ authentication.js

module.exports = function (app) {
    [routes]
}

如果在您已經有權訪問應用程序的地方經常使用依賴模塊,則可以在app上設置值,例如app.config = require('./config') 但是 ,為了清楚起見,通常最好在該模塊的頂部指定特定模塊的依賴關系。除了為每個模塊添加更多代碼之外沒有任何其他危害。)

此外,雖然可以使用構造函數並將app傳遞給此函數,但您也可以使用模塊來實現此目的。 確保在創建app導出app ,即var app = module.exports = express(); 然后只需var app = require('../app'); 來自其他圖書館。 您將在一些Express示例中看到這一點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM