具体代码如下:
function BuildRoutes(routes) {
let element = {
name: routes.name,
path: routes.path,
component: () => import(`@/${routes.component}.vue`)
};
if (routes.component == "") {
delete element.component;
}
if (!isNull(routes.children) || !isUndefined(routes.children)) {
element.children = [];
routes.children.forEach(item => {
element.children.push(BuildRoutes(item));
});
return element;
}
return element;
}
// 递归组装路由信息
function dynamicBuild(source) {
let element = {
name: source.label,
path: source.full_url,
component: source.component
};
if (source.children != null) {
element.children = [];
source.children.forEach(item => {
element.children.push(dynamicBuild(item));
});
return element;
}
return element;
}
// vuex mutations 函数
generateRoutes: (state, routes) => {
state.addRouters = routes;
let routers = BuildRoutes(routes);
if (isObject(routers)) {
routers = [routers];
}
router.addRoutes(routers);
}
// 动态路由请求数据获取
function dynamicRouter() {
menuList().then(res => {
let backendRouter;
backendRouter = dynamicBuild(res.data.data[0]);
storage.setItem({
name: 'backend_router',
value: backendRouter,
expires: new Date().getTime() + 60 * 60 * 1000
});
store.dispatch('GenerateRoutes', backendRouter)
});
}
vue项目动态设置background背景色,解决颜色被替换问题
上面是“vue项目如何实现动态路由?”的全面内容,想了解更多关于 vuejs 内容,请继续关注web建站教程。
当前网址:https://ipkd.cn/webs_4375.html
workflows工作流
一张皮卡丘向观众眨眼的逼真照片ComfyUI工作流
3D圆形玉雕图案comfyui工作流
城市里出现一只可爱的小生物ComfyUI工作流
森林里一只空灵的犀鸟ComfyUI工作流
一艘来自工业时代的飞船ComfyUI工作流
泰坦尼克号桌面壁纸上ComfyUI工作流
一个由红色玻璃制成的女性形状的破碎雕塑
一个以破旧的怀旧史努比玩偶
猜你喜欢
声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

js导出excel插件(兼容mac电脑Numbers表格)
css3绘制一个会动的大嘴鸟
纯html+css做一个3d统计效果
css3实现星球旋转
如何利用svg做一个有趣的loading动画加载
利用html5+css3实现滚雪球效果(附代码)
js+css3做一个灯泡开灯关灯效果
利用canvas画几个好玩的星云物种










