vue自定义标签和单页面多路由实现

1. 自定义组件标签(如在主页插入顶栏/侧边栏等)

比如说要将Header.vue插入Home.vue中显示:定义好Header.vue,然后在Home.vue的script中导入Header.vue:  

 import vHead from "./Header.vue";   #导入Header.vue为vHead,注意路径,Header.vue和Home.vue在同一路径下用./

然后导出组件:  

export default {
   components: {
     vHead,
   }
 };

然后即可在Home.vue的<template>中直接插入使用了:  

 <vHead></vHead>

vi设计http://www.maiqicn.com 办公资源网站大全https://www.wode007.com

2. 单页面多路由实现

单页面多路由就是在同一页面上显示不同路由的内容,通过设置为子路由的方式,然后通过 <router-view></router-view>,作为子路由的插入点。访问对应路由时候,会将该路由内容渲染到<router-view></router-view>位置。

比如:要在Home.vue页面上显示HomeDesk.vue等页面:

1.通过设置./router/index.js路由中的children属性,设置HomeDesk.vue为Home.vue的子路由:  

const routes = [ 
 {
   path: '/',
   name: 'home',
   component: () => import('../components/common/Home.vue'),   #注意引用路径
   children: [
   {
     path: '/homedesk',
     name: 'homedesk',
     component: () => import('../components/page/HomeDesk.vue')   #注意引用路径
  },}]

2.在HomeDesk.vue页面相应位置添加<router-view></router-view>,访问对应路由/homedesk时,即会将该路由内容渲染到HomeDesk.vue对应位置。

原文地址:https://www.cnblogs.com/xiaonian8/p/13764799.html