我的路由檔案夾中有很多路由器。當我想在我的主服務器檔案中使用它們時,它需要太多行。我可以將這些移動到另一個檔案嗎?如果是的話怎么辦?
前任:
app.use("/user", userRouter);
app.use("/user", loginRouter);
app.use("/role", roleRouter);
app.use("/rolePermission", rolePermissionRouter);
app.use("/module", moduleRouter);
app.use("/menu", menuRouter);
app.use("/menuItem", menuItemRouter);
app.use("/news", newsRouter);
app.use("/newsItem", newsItemsRouter);
app.use("/news/category", newsCategoryRouter);
app.use("/news/comments", newsCommentRouter);
app.use("/news/comments/user", newsCommentUserRouter);
app.use("/setting", settingRouter);
app.use("/news/rating/user", newsRatingUserRouter);
app.use("/news/tag/user", newsTagUserRouter);
app.use("/linkbox", linkboxRouter);
app.use("/linkboxItem", linkboxItemRouter);
app.use("/linkbox/category", linkboxCategoryRouter);
app.use("/faq", FAQRouter);
app.use("/faq/category", FAQCategoryRouter);
app.use("/faqItem", FAQItemRouter);
app.use("/contact", contactRouter);
app.use("/contactItem", contactItemRouter);
app.use("/imageGallery", imageGalleryRouter);
app.use("/imageGallery/category", imageGalleryCategoryRouter);
app.use("/imageGallery/comment", imageGalleryCommentRouter);
app.use("/imageGallery/comment/user", imageGalleryCommentUserRouter);
app.use("/imageGalleryItem", imageGalleryItemRouter);
app.use("/imageGallery/tag/user", imageGalleryTagUserRouter);
app.use("/imageGallery/rating/user", imageGalleryRatingUserRouter);
uj5u.com熱心網友回復:
有多種方法可以實作這一點,但我建議在兩者之間創建一個新路由器,并在那里注冊所有路由。就像你已經對例如userRouter.
您可以創建一個router.js包含以下內容的新檔案:
import { Router } from 'express';
const router = Router();
router.use("/user", userRouter);
router.use("/user", loginRouter);
router.use("/role", roleRouter);
router.use("/rolePermission", rolePermissionRouter);
router.use("/module", moduleRouter);
router.use("/menu", menuRouter);
router.use("/menuItem", menuItemRouter);
router.use("/news", newsRouter);
router.use("/newsItem", newsItemsRouter);
router.use("/news/category", newsCategoryRouter);
router.use("/news/comments", newsCommentRouter);
router.use("/news/comments/user", newsCommentUserRouter);
router.use("/setting", settingRouter);
router.use("/news/rating/user", newsRatingUserRouter);
router.use("/news/tag/user", newsTagUserRouter);
router.use("/linkbox", linkboxRouter);
router.use("/linkboxItem", linkboxItemRouter);
router.use("/linkbox/category", linkboxCategoryRouter);
router.use("/faq", FAQRouter);
router.use("/faq/category", FAQCategoryRouter);
router.use("/faqItem", FAQItemRouter);
router.use("/contact", contactRouter);
router.use("/contactItem", contactItemRouter);
router.use("/imageGallery", imageGalleryRouter);
router.use("/imageGallery/category", imageGalleryCategoryRouter);
router.use("/imageGallery/comment", imageGalleryCommentRouter);
router.use("/imageGallery/comment/user", imageGalleryCommentUserRouter);
router.use("/imageGalleryItem", imageGalleryItemRouter);
router.use("/imageGallery/tag/user", imageGalleryTagUserRouter);
router.use("/imageGallery/rating/user", imageGalleryRatingUserRouter);
export default router;
而不是將此路由器匯入之前的檔案(例如server.js或main.js),您用于配置 expressapp物件,并將我們之前的所有 30 個路由注冊替換為新路由器,例如:
import GlobalRouter from './router.js';
[...]
app.use(GlobalRouter);
[...]
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/525205.html
標籤:节点.js表示
