Skip to content
1
/ Source Code/vite-plugin-pages
9/17/2024
2.8m
AI 摘要

vite-plugin-pages 是基于文件系统的 Vite 路由生成器,通过监听 pages 目录变化,自动生成 vue-router 路由配置。支持 Vue、React、Solid 框架,利用 Virtual Module 实现动态路由映射。

vite-plugin-pages

基于文件系统的 Vite 路由生成器

Usage

对于 Vite + Vue 而言,使用方式如下:

$ npm i vite-plugin-pages

例如对于下面的目录结构:

  • src
    • pages
      • blog
        • today
          • index.vue
      • about
        • id
          • nested.vue
        • [id].vue
      • about.vue
      • [id].vue
      • jsx.jsx
      • [...all].vue
    • main.ts
  • vite.config.ts

例如对于下面的目录结构:

routes

原理

利用 vite 内部暴露的 paulmillr/chokidar 监听 pages 下面文件的的新增、变动、删除等

下面的作用就是监听 pages 目录下面的文件的增加,把结果收集到 _pageRouteMap

下面的作用就是监听 pages 目录下面的文件的增加,把结果收集到 _pageRouteMap

下面是基于上面生成的 pageRouteMap 用于生成 Vue Router 的路由配置:

下面是基于上面生成的 pageRouteMap 用于生成 Vue Router 的路由配置:

从 pageRouteMap,经过排序,父子关系建立,路由转换,最终得到 finalRoutes

Released under the MIT License.