[英]Express Route not firing when called
我有一個在我的快遞應用程序中定義的路由,我將它放在一個路由器中,該路由器在主文件中導入我的應用程序。
我在index.js
安裝了這樣的路由器
const Routes = require('./routes');
app.use('/address', Routes.AddressRoutes);
在routes文件夾中,我有這樣的地址路由器暴露:
//./routes/index.js
const AddressRoutes = require('./address');
module.exports = Routes = {
AddressRoutes,
};
// ./routes/address.js
const router = require('express').Router();
const {Address} = require('./routeActions');
module.exports = () => {
router.post('/', Address.add);
return router;
};
// ./routes/routeActions/index.js
const Address = require('./user');
module.exports = {
Address,
};
// ./routes/routeActions/address.js
module.exports = Address = {
add: (req,res) => {....}
};
問題是我在add()
函數中的VS代碼中有一個斷點,但唯一受到影響的是路由的定義,而不是實際的處理程序。 我的模塊太復雜了嗎? 如何調用處理程序以便我可以調試它?
兩個選項來修復。
添加路徑定義時,請運行導出的功能。
const Address = require('./address')();
或者在導出路徑定義時,只需從文件中導出路由器即可。
module.exports = router;
不是module.exports = () => {routeHandlers.... return router}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.