当前位置: 首页 > article >正文

Vue3入门(7)

下面开始介绍路由

1. 【对路由的理解】

2 【基本切换效果】

- `Vue3`中要使用`vue-router`的最新版本,目前是`4`版本。

- 路由配置文件代码如下:

 import {createRouter,createWebHistory} from 'vue-router'

  import Home from '@/pages/Home.vue'

  import News from '@/pages/News.vue'

  import About from '@/pages/About.vue'



  const router = createRouter({

    history:createWebHistory(),

    routes:[

      {

        path:'/home',

        component:Home

      },

      {

        path:'/about',

        component:About

      }

    ]

  })

  export default router

`main.ts`代码如下:

  import router from './router/index'

  app.use(router)



  app.mount('#app')

  ```

 `App.vue`代码如下

 

<template>

    <div class="app">

      <h2 class="title">Vue路由测试</h2>

      <!-- 导航区 -->

      <div class="navigate">

        <RouterLink to="/home" active-class="active">首页</RouterLink>

        <RouterLink to="/news" active-class="active">新闻</RouterLink>

        <RouterLink to="/about" active-class="active">关于</RouterLink>

      </div>

      <!-- 展示区 -->

      <div class="main-content">

        <RouterView></RouterView>

      </div>

    </div>

  </template>



  <script lang="ts" setup name="App">

    import {RouterLink,RouterView} from 'vue-router'  

  </script>

3. 【两个注意点】

第一. 路由组件通常存放在`pages` 或 `views`文件夹,一般组件通常存放在`components`文件夹。

第二. 通过点击导航,视觉效果上“消失” 了的路由组件,默认是被**卸载**掉的,需要的时候再去**挂载**。

4.【路由器工作模式】

第一. `history`模式

   优点:`URL`更加美观,不带有`#`,更接近传统的网站`URL`。

   缺点:后期项目上线,需要服务端配合处理路径问题,否则刷新会有`404`错误。

 const router = createRouter({

history:createWebHistory(), //history模式

/******/

 })

第二 `hash`模式

   > 优点:兼容性更好,因为不需要服务器端处理路径。

   > 缺点:`URL`带有`#`不太美观,且在`SEO`优化方面相对较差。

   const router = createRouter({

     history:createWebHashHistory(), //hash模式

     /******/

   })

5. 【to的两种写法】

<!-- 第一种:to的字符串写法 -->

<router-link active-class="active" to="/home">主页</router-link>

<!-- 第二种:to的对象写法 -->

<router-link active-class="active" :to="{path:'/home'}">Home</router-link>

6. 【命名路由】

作用:可以简化路由跳转及传参(后面就讲)。

给路由规则命名:

routes:[

  {

    name:'zhuye',

    path:'/home',

    component:Home

  },

  {

    name:'xinwen',

    path:'/news',

    component:News,

  },

  {

    name:'guanyu',

    path:'/about',

    component:About

  }

]

跳转路由:

<!--简化前:需要写完整的路径(to的字符串写法) -->

<router-link to="/news/detail">跳转</router-link>

<!--简化后:直接通过名字跳转(to的对象写法配合name属性) -->

<router-link :to="{name:'guanyu'}">跳转</router-link>


http://www.kler.cn/a/450043.html

相关文章:

  • 有没有检测吸烟的软件 ai视频检测分析厂区抽烟报警#Python
  • 某科技局国产服务器PVE虚拟化技术文档
  • 【python高级】342-TCP服务器开发流程
  • 微机接口课设——基于Proteus和8086的打地鼠设计(8255、8253、8259)
  • 分享某大佬微信hook 最新版本 dll (懂得都懂)
  • 视频汇聚融合云平台Liveweb一站式解决视频资源管理痛点
  • SQL语句整理五-StarRocks
  • 后端项目java中字符串、集合、日期时间常用方法
  • Strip Map和Wafer Map的一些小科普
  • Android修行手册 - 移动端几种常用动画方案对比
  • LLMs之PDF:MinerU(将PDF文件转换成Markdown和JSON格式)的简介、安装和使用方法、案例应用之详细攻略
  • Mac iOS、Android、Flutter、React Native开发环境配置
  • 【专题】2024抖音电商母婴行业分析报告汇总PDF洞察(附原数据表)
  • 【ArcGIS Pro】实现一下完美的坐标点标注
  • “年轻科技旗舰”爱玛A7 Plus正式发布,全国售价4999元
  • 【人工智能】探索当下热门视频生成模型
  • Elasticsearch:确保业务规则与语义搜索无缝协作
  • 项目开发实践——基于SpringBoot+Vue3实现的在线考试系统(二)
  • MySQL数据库——复制表数据与结构
  • Zookeeper基本命令解析
  • 设计模式-访问者设计模式
  • linux Sudo权限
  • 《探秘 Qt Creator Manual 4.11.1》
  • 基于Java的秦皇岛旅游景点管理系统
  • 【WRF教程第3.5期】预处理系统 WPS 详解:以4.5版本为例
  • 电脑出现 0x0000007f 蓝屏问题怎么办,参考以下方法尝试解决