vue45 —— vue-router 安装使用,修改路由默认路径,修改hash—>history

本文介绍了Vue.js的官方路由插件vue-router的使用,包括如何安装、配置路由映射,以及如何修改路由的默认路径和从hash模式切换到history模式。在vue-router中,页面路径的切换对应组件的切换。通过创建路由组件,配置映射关系,然后在App.vue中使用<router-link>和<router-view>进行页面跳转。同时,文中提到了设置默认路由和改变路由模式的方法。

三大框架的路由实现

  • Angular: ngRouter
  • React:ReactRouter
  • Vue:vue-router

vue-router

vue-router是Vue.js官方的路由插件,
和vue.js是深度集成的,
适合用于构建单页面应用

基于路由和组件

  • 路由用于设定访问路径,将路径和组件映射起来
  • 在vue-router单页面应用中,页面路径的改变 就是 组件的切换

安装和使用

(使用脚手架时选了router,不用再次安装配置)

npm install vue-router --save

src文件夹下创建router文件夹,router下创建index.js文件–配置路由相关信息

在模块化工程中使用(因为是插件,所以可通过Vue.use()安装路由功能)

  1. 导入路由对象,且调用Vue.use(VueRouter)
  2. 创建路由实例,且传入路由映射配置
  3. vue实例挂载创建的路由实例

index.js:

// 配置路由相关信息
// 1. 导入路由
import VueRouter from 'vue-router'
// 导入Vue
import Vue from 'vue'

// 1.1 通过Vue.use(插件),安装插件
// 导入Vue
Vue.use(VueRouter)

// 1.2 创建VueRouter对象
const router = new VueRouter({
  // 配置路径和组件之间的映射关系
  routes:[

  ]
})

// 1.3 将VueRouter实例传入到vue实例中
export default router

main.js:

import Vue from 'vue'
import App from './App'

// 导入vuerouter
import router from './router/index' //可以省略/index

Vue.config.productionTip = false

/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,  // 挂载router
  render: h => h(App)
})

使用步骤

  • 创建路由组件
  • 配置路由映射:组件和路径映射关系
  • 使用路由:通过<router-link> 和 <router-view>

在这里插入图片描述

Home.vue:

<template>
  <div>
    <h2>我是组件 home</h2>
    <p>。。家是小的国,国是大的家。。</p>
  </div>
</template>

<script>
export default {
  name: 'Home'
}
</script>

<style>

</style>

About.vue:

<template>
  <div>
    <h2>我是组件 about</h2>
    <p>。。i 。。</p>
  </div>
</template>

<script>
export default {
  name: 'About'
}
</script>

<style>

</style>

index.js:


import Home from '../components/Home'
import About from '../components/About'

const routes = [
  {
    path:'/home',
    component: Home
  },
  {
    path: '/about',
    component: About
  }
]

routes – 不是routers
path: '/xxx’

App.vue:

<template>
  <div id = 'app'>
    <router-link to='/home'>首页</router-link>
    <router-link to='/about'>关于</router-link>
    <router-view></router-view>
  </div>
</template>

to = '/xxx’
在这里插入图片描述

路由的默认路径

一打开网页就显示首页相关页面,而不用先点击

src - router - index.js:

{
    path: '/',
    redirect: '/home'
  },

redirect: 重定向

将默认的hash模式 改为 h5的history模式

src - router - index.js:

const router = new VueRouter({
  // 配置路径和组件之间的映射关系
  routes,
  mode: 'history'
})
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值