Vue —— 路由

本文详细探讨了Vue.js中的路由应用,包括不同版本的vue-router安装、路由懒加载、编程式导航、参数传递(params和query)、多级路由、命名路由、路由props配置、路由缓存、激活与失活的生命周期以及路由守卫等核心概念,并提供了相关面试题以供复习。
摘要由CSDN通过智能技术生成
路由
  • 下载 router 并使用 :
    • vue-router3 只能在 vue2 中使用 npm i vue-router@3
    • vue-router4 只能在 vue3 中使用 npm i vue-router@4
$route	: 一般获取路由信息(路径、query、params)
$router	: 一般进行编程式导航进行路由跳转
(1)安装路由 与 创建路由组件
   components 文件夹:非路由组件
   pages || views 文件夹:路由组件  ==> src 下创建 pages文件夹
(2)配置路由 ==> src 下创建  router 文件夹, 创建文件 index.js 进行路由配置,然后在入口文件注册
  • router/index.js 路由懒加载
import Vue from 'vue'
import Router from 'vue-router'

Vue.use(Router)


/* Layout */
import Layout from '@/layout'

//解决编程导航方式路由跳转方式不可重复提交相同参数的问题 ==> 重写 push 和 replace 方法
//1.先把 VueRouter 原型对象的 push 保存一份
let originPush = Router.prototype.push;

//重写 push | replace
//第一个参数:跳转地址和参数
Router.prototype.push = function (location, resolve, reject) {
   
  if (resolve && reject) {
   
    originPush.call(this, location, resolve, reject);
  } else {
   
    originPush.call(this, location, () => {
    }, () => {
    });
  }
}


export const constantRoutes = [
  // 搜索商品路由
  {
   
    path: '/search',
    component: () => import('@/views/Search/index'),
    hidden: true
  }
  ,

  //注册路由
  {
   
    path: '/register',
    component: () &
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值