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

来自:互联网
时间:2020-05-04
阅读:

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

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

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

然后导出组件:

export default {
 components: {
  vHead,
 }
 };

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

<vHead></vHead>

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

返回顶部
顶部