Vue 多路由文件的合并

1.使用的是ES6 数组的合并方法

let routes = new Set([...routes1, ...homerouters]);
2.两个路由文件,导出的实际上就是一个数组
//route.js文件
export default [
{
path: "/login",
component: (resolve) => require(['../views/login.vue'], resolve)//实现懒加载
},
{
path: "/home",
component: (resolve) => require(['../views/home.vue'], resolve),
children: [
{
path: '/project',
component: (resolve) => require(['../views/project.vue'], resolve)
}, {
path: '/building',
component: (resolve) => require(['../views/building.vue'], resolve)
}, {
path: '/floor',
component: (resolve) => require(['../views/floor.vue'], resolve)
}, {
path: '/room',
component: (resolve) => require(['../views/room.vue'], resolve)
},{
path: '/device',
component: (resolve) => require(['../views/menu.vue'], resolve)
},{
path: '/collector',
component: (resolve) => require(['../views/collector.vue'], resolve)
},
{
path: "/model",
component: (resolve) => require(['../views/model.vue'], resolve)
}
]
},
]
//homeroutes.js 文件,实际上导出的就是一个数组
export default [
{
path: '/',
component: (resolve) => require(['../views/Index.vue'], resolve)
},
{
path: '/mainhome',
component: (resolve) => require(['../views/Home.vue'], resolve),
children: [
{
path: '/',
component: (resolve) => require(['../views/Home.vue'], resolve)
},
{
path: 'tree',
component: (resolve) => require(['../components/Tree.vue'], resolve)
},
{
path: 'table',
component: (resolve) => require(['../components/Table.vue'], resolve)
},
{
path: 'electricalmeasurement',
component: (resolve) => require(['../components/ElectricalMeasurement.vue'], resolve)
}
]
},
{
path: '/table',
component: (resolve) => require(['../components/Table.vue'], resolve)
},
{
path: "*",
component: (resolve) => require(['../views/Index.vue'], resolve)
},
]
导入两个路由文件,进行数组合并之后,传入VueRoute实例化的参数中
//是index.js 文件
import Vue from 'vue'
import VueRouter from 'vue-router' //路由
import routes1 from "./Admin/route/route.js"//导入路由文件
import homerouters from "./Home/routers/homerouters.js"//g前端页面路由
Vue.use(VueRouter)
//合并两个路由
let routes = new Set([...routes1, ...homerouters]);
const router = new VueRouter({
routes,
mode: 'history'
})

总结:

1.多路由文件实现,实际上是为了分开管理不同模块的路由文件,便于管理和查找

2.在vue的组件开发中,使用的ES6的语法,所以使用的是ES6合并数组的方式进行实现,导入两个路由模块的合并

Vue 多路由文件的合并的更多相关文章

  1. Vue之单文件组件的数据传递,axios请求数据及路由router

    1.传递数据 例如,我们希望把父组件的数据传递给子组件. 可以通过props属性来进行传递. 传递数据三个步骤: 步骤1:在父组件中,调用子组件的组名处,使用属性值的方式往下传递数据 <Menu ...

  2. Vue 项目中对路由文件进行拆分(解构的方法)

    项目需求场景: 在开发项目过程中,在项目过于庞大,路由信息非常多的情况下,如果将路由配置信息都放在一个文件里面,那么这个JS是不方便维护的, 那么,这个时候需要我们把这个庞大的路由文件,根据项目功能分 ...

  3. vue的路由设置小结

    vue的路由设置小结 // 异步路由的编写示例.其中针对component字段进行懒加载及分块处理,提升首屏加载速度的同时,也可以手动控制让某些页面合并到一个单独的js文件中,而不是每个页面都是一个j ...

  4. Vue 路由懒加载, VueRouter一步完成Vue的路由懒加载 一行代码搞定懒加载

    Vue Router路由配置中的component里面配置即可 1 // 路由懒加载的方式加载组件 2 3 component: () => import('@/views/Detail'), ...

  5. vue(5)—— vue的路由插件—vue-router 常用属性方法

    前端路由 看到这里可能有朋友有疑惑了,前端也有路由吗?这些难道不应该是在后端部分操作的吗?确实是这样,但是现在前后端分离后,加上现在的前端框架的实用性,为的就是均衡前后端的工作量,所以在前端也有了路由 ...

  6. vue的路由映射问题

    遇到的问题 今天在项目中遇到了一个问题,明明在Router文件夹下的路由js映射文件中,配置好了,如下: // 生日贺卡 { path: 'birthdayRemind', component: lo ...

  7. 前端MVC Vue2学习总结(八)——Vue Router路由、Vuex状态管理、Element-UI

    一.Vue Router路由 二.Vuex状态管理 三.Element-UI Element-UI是饿了么前端团队推出的一款基于Vue.js 2.0 的桌面端UI框架,手机端有对应框架是 Mint U ...

  8. Vue.js路由详解

    有时候,我们在用vue的时候会有这样的需求,比如一个管理系统,点了左边的菜单栏,右边跳转到一个新的页面中,而且刷新的时候还会停留在原来打开的页面. 又或者,一个页面中几个不同的画面来回点击切换,这两种 ...

  9. vue权限路由实现方式总结二

    之前已经写过一篇关于vue权限路由实现方式总结的文章,经过一段时间的踩坑和总结,下面说说目前我认为比较"完美"的一种方案:菜单与路由完全由后端提供. 菜单与路由完全由后端返回 这种 ...

随机推荐

  1. C博客的第1次作业--分支,顺序结构

    1.本章学习总结 1.1 思维导图 1.2本章学习体会,代码量学习体会 1.2.1学习体会 初步了解什么是C语言,明白了这门语言的基本运行功能.了解了关于c语言结构上,语法上的基本知识.下一步要进一步 ...

  2. BZOJ3786: 星系探索(伪ETT)

    题面 传送门 题解 坑啊--我好像把\(Splay\)的东西全忘光了-- \(ETT\)(\(Euler\ Tour\ Tree\))是一种可以资瓷比\(LCT\)更多功能的数据结构,然而不管是功能还 ...

  3. by python3-XSStrike 测试XSS

    一.概述: XSStrike是一个Cross Site Scripting检测套件,配备四个手写解析器,一个智能有效载荷生成器,一个强大的模糊引擎和一个非常快速的爬虫. XSStrike不是像其他工具 ...

  4. Protobuf底层存储原理

    参考官网, 序列化原理 底层二进制存储 message Test1 { optional int32 a = 1; } 并设置为a=150,序列化到一个文件中,查看文件,得到下面的二进制: 08 96 ...

  5. 关于ajax学习

    一.Ajax是XMLHttpRequest对象,javascript,XML,CSS,DOM等多种技术的组合 1.XML :(可扩展的标记语言) 提供了用于描述结构化数据的格式,适用于不同应用间的数据 ...

  6. Mac下包管理平台homebrew的使用

    一.安装 参考:http://www.cnblogs.com/EasonJim/p/6287098.html 二.使用 假设我要安装node,命令如下: 安装软件 brew install node ...

  7. (转)MySQL出现同步延迟有哪些原因?如何解决?

    http://oldboy.blog.51cto.com/2561410/1682147----MySQL出现同步延迟有哪些原因?如何解决? 原文:http://www.zjian.me/mysql/ ...

  8. Linux系统编程:进程控制

    一.进程相关操作与编程对应函数 1.进程创建:两种方式来实现. ①fork:创建一个子进程,父子进程共享一份代码程序,但是各有一份独立的数据,为了效率和保持数据的独立采用写时复制技术(COW).运行无 ...

  9. Nginx PHP fpm forbidden 原因

    可能是标红目录层级不一致 location / { root /var/www/html/public; index index.php; } location ~ \.php$ { root /va ...

  10. hibernate_annotation字段映射位置

    @Id private int id; private String name; private String wifeName; private Date birthDate; //Title是En ...