vue 的router-view 组件

router-view 是 Vue Router 提供的核心组件,用于在页面中展示当前路由匹配到的组件内容。它相当于一个 "占位符",会根据当前激活的路由自动渲染对应的组件。

基本用法

  1. 首先需要安装并配置 Vue Router
  2. 在模板中使用 <router-view> 标签作为路由组件的容器

<template>
  <div>
    <!-- 导航链接 -->
    <router-link to="/home">首页</router-link>
    <router-link to="/about">关于</router-link>
    
    <!-- 路由组件将在这里渲染 -->
    <router-view></router-view>
  </div>
</template>

主要特性

  1. 动态渲染
    根据当前 URL 对应的路由配置,自动渲染匹配到的组件

  2. 嵌套路由支持
    当使用嵌套路由时,父组件中的 <router-view> 会渲染子路由组件

    // 路由配置示例
    const routes = [
      {
        path: '/user',
        component: User,
        children: [
          { path: 'profile', component: UserProfile }, // 会渲染在User组件的router-view中
          { path: 'posts', component: UserPosts }      // 会渲染在User组件的router-view中
        ]
      }
    ]
    
  3. 命名视图
    可以通过 name 属性指定不同的视图,实现同时渲染多个组件

    <!-- 模板中 -->
    <router-view name="header"></router-view>
    <router-view></router-view> <!-- 默认视图,name为default -->
    <router-view name="footer"></router-view>
    
     
    // 路由配置
    {
      path: '/',
      components: {
        default: Main,
        header: Header,
        footer: Footer
      }
    }
    
  4. 传递 props
    可以通过配置将路由参数作为 props 传递给渲染的组件

    // 路由配置
    {
      path: '/user/:id',
      component: User,
      props: true // 将路由参数作为props传递
    }
    

常见用法场景

  • 单页应用 (SPA) 的页面切换
  • 实现复杂布局的嵌套页面结构
  • 多区域同时更新不同组件内容

router-view 本身不会渲染任何内容,它的作用只是提供一个挂载点,具体渲染什么由 Vue Router 根据当前路由决定。这使得我们可以在不刷新整个页面的情况下,实现页面内容的动态切换,这也是单页应用的核心特性之一。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值