之前做一个后台系统的时候,前期路由也就十多个,就是使用的文档中的那种写法:
import Vue from 'vue'; const Login = () => import('@/components/login/login'); const Index = () => import('@/components/home/index'); // balaba.......前期少量的路由 export default new Router({ routes: [ { path: '/login', name: 'Login', component: Login, }, { path: '/home', redirect: '/operation/info/list', name: 'home', }, //babal..........前期少量的路由 ]) 复制代码
在后期需求越来越来之后,整个项目的页面达到了200+,此时的路由用之前的写法无疑显得特别冗余,且在团队协作的时候同时修改此文件容易冲突。
require.context('../view',true,/\.(vue|js)$/)
,第一个参数指的是要检索的文件路径,第二个参数是指是否检索子目录,第三个参数需要传入一个正则表达式来匹配被检索目录下符合正则的文件(如上正则为匹配被检索目录所有vue/js文件)。 最终,我们的router.js从几百行的路由配置优文件化成了仅仅几十行代码的文件。 参考文章:https://github.com/wuchangming/blog/blob/master/docs/webpack/require-context-usage.md