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对应位置。