美文网首页
vue-router基本使用

vue-router基本使用

作者: tutututudou | 来源:发表于2022-06-27 00:15 被阅读0次

安装

npm i vue-router@3

使用路由,引入路由规则

main.js文件

import Vue from 'vue'
import App from './app.vue'
// 导入vue-router
import VueRouter from 'vue-router'
// 引入路由规则
import router from './router/index'
// 使用路由插件
Vue.use(VueRouter)

new Vue({
  el:'#app',
  render: h => h(App),
  // vue使用路由规则
  router:router
})

配置路由规则,在文件夹router新建文件index.js
这个文件是统一管理组件的路由文件
router/index.js

// 导入路由插件
import VueRouter from "vue-router"

// 导入组件
import About from '../components/About'
import Home from '../components/Home'
// 实例化VueRouter
export default new VueRouter({
 // 配置路由规则,route是VueRouter构造函数的配置。和vue的data一样的内置配置
 routes:[
  {
   // 配置浏览器的路径名字,比如
   // http://localhost:8080/#/about
   path:'/about',
   // 跳转到哪个路径就显示哪个组件,
//URL是http://localhost:8080/#/about,就显示About这个组件,
//这个组件是import导入import About from '../components/About'
   component:About
  },
  {
   path:'/home',
   component:Home
  }
 ]
})

path和component就是像是一组key和value的关系,以后我们指定一个规则(path的值就是规则),就显示对应的组件(component的值就是指定的组件)

app.vue文件配置

<template>
  <div>
   <!-- 这是普通的组件,在js里面有在component配置中引入组件 -->
   <Banner></Banner>
   <!-- router-link相当于a标签,to相当于href,但是to这个属性必须写,不然报错如下: -->
   <!-- [Vue warn]: Missing required prop: "to" -->
   <!-- 这个router-link属性标签,在html解析中最终会变成a标签,所以,css样式会生效 -->
   <router-link to="/about">about</router-link>
   <br>
   <router-link to="/home">home</router-link>
   <!-- router-view这个标签在使用路由组件时要写上,表示要在哪里显示组件标签,
   现在可以看出来,先展示了Banner组件,然后展示router-link里面的内容,
   当点击about或home这两个相当于a标签包裹的标签体时,router-view要展示的组件
  要显示的组件由to里面的值做决定,to里面的值由会跳转到/router/index.js文件去寻找path的值
  path就把对应的component配置的组件展示 -->
   <router-view></router-view>
  </div>
</template>

<script>
import Banner from './components/Banner.vue'
export default {
  components: { Banner },

}
</script>

<style>
a{
 list-style: none;
 text-decoration: none;
 color: red;
}
</style>

使用router-link 这个标签时,它会自动去router/index.js文件查找里一些配置,使用router-link 的to属性时,to的值 ,会在VueRouter这个构造函数配置的routes找path的值进行对比
现在我们这么配置to="/about",值是/about,我们找path的值也是/about,两个对比成功,那么就显示组件component:About

About.vue文件

<template>
  <h1>这是about</h1>
</template>

<script>
export default {
 // 这个可写可不写
 name:'test1'

}
</script>

Home.vue

<template>
  <h1>这是home</h1>
</template>

<script>
export default {

}
</script>
vue-router简单展示.PNG

vue-router几个注意点
1.把路由组件和普通组件分开,用不同的文件夹保存,普通组件要引入组件标签

components: { Banner }

路由组件不需要,to到router/index.js文件找path,再显示同一个括号里面的配置的的组件

component:About

2.每次切换路由标签,都会重新挂载,被切换后,路由组件会被销毁

路由组件调用和销毁.PNG
mounted(){
 console.log('Home.vue组件被调用')
},
beforeDestroy(){
 console.log('Home.vue组件被销毁')
}
...
mounted(){
 console.log('About.vue组件被调用')
},
beforeDestroy(){
 console.log('About.vue组件被销毁')
}

3.每个路由组件都有一个route和router

  • $route这路由组件自己的本身的配置
  • $router这是所有路由组件共用的配置


    route和router.PNG

相关文章

  • Vue.js 学习笔记(三)

    路由 vue-router 的基本使用 定义组件 定义 vue-router 关联到 Vue 实例 实现 效果展示...

  • Vue3+TS Day22 - vue-router、基本使用、

    一、vue-router基本认识 1、如何在项目中安装,并简单使用vue-router? 2、如何给router配...

  • 19.vue-router的基本使用

    vue-router的基本使用 1.首先,我们需要引入我们的vue-router这个插件 2. 然后,我们需要通过...

  • vue Vuex axios 相关资料

    vue中文文档 使用Vuex详解 vue-router 基本使用 vue全局使用axios的方法 vue 父子组件...

  • vue-router

    安装cnpm install --save vue-router 引入// main.js 使用 基本操作 JS ...

  • 非SSR下的VUE持久化路由动态加载(一)

    一,路由的基本使用: 我们在使用vue-router的时候,基本情况会有如下配置 然后通过webpack进行编译,...

  • vue-router

    前端路由的基本原理 vue-router的基本使用 命名路由 路由参数 嵌套路由

  • vue-router基本使用

    vue-router 基本使用 路由,其实就是指向的意思,当我点击页面上的home按钮时,页面中就要显示home的...

  • Vue-router基本使用

    1路由,其实就是指向的意思,当我点击页面上的home按钮时,页面中就要显示home的内容,如果点击页面上的abou...

  • vue-router 基本使用

    vue-router 基本使用 路由,其实就是指向的意思,当我点击页面上的home按钮时,页面中就要显示home的...

网友评论

      本文标题:vue-router基本使用

      本文链接:https://www.haomeiwen.com/subject/mwyydrtx.html