//***路由自动化START***
//循环目录
let routers = require.context('@/views', true).keys();
//过滤含有.vue的文件
routers = routers.filter(item => item.indexOf(".vue") != -1);

let indexRouterArray=[];
let rtIndexRouterArrayPath={};
//循环目标文件
routers.forEach(item => {
	const paths = item.match(/[a-zA-Z]+/g) //paths中存储了一个目录,二级目录,文件名
	let pageI=item.replace(/\.\//g,"").replace(/\.vue/g,"");

	let routerData= {
		path: '/' + pageI,
		name:"A_"+pageI.replace(/\//g,"_"),
		component: () => import("@/views/"+pageI),
	}
	//如果目录下的文件名是index.vue 路由直接是目录名
	if(paths[paths.length-2]=="index"){
		routerData.path=routerData.path.replace(/\/index/g,"")
	}
	rtIndexRouterArrayPath[item]={
		path:routerData.path,
		name:routerData.name
	};
	indexRouterArray.push(routerData);
})

console.log("自动化路由路径", rtIndexRouterArrayPath)
//合并手动路径和自动路径
routesArray=routesArray.concat(indexRouterArray)
//***路由自动化END***

发表评论

电子邮件地址不会被公开。 必填项已用*标注