leiwuhen-67's blog leiwuhen-67's blog
首页
    • 《Vue》笔记
    • 《React》笔记
    • 《NodeJs》笔记
    • 《CSS》笔记
    • 《Redis》笔记
    • 基础入门
    • 《Mock》笔记
    • 《MySQL》笔记
    • 《Git》相关
影音视听
收藏
关于
GitHub (opens new window)

我的公众号

首页
    • 《Vue》笔记
    • 《React》笔记
    • 《NodeJs》笔记
    • 《CSS》笔记
    • 《Redis》笔记
    • 基础入门
    • 《Mock》笔记
    • 《MySQL》笔记
    • 《Git》相关
影音视听
收藏
关于
GitHub (opens new window)
  • Vue2

  • Vue3

    • 组件内导航守卫
    • vue3.0与vue3.2对比
    • 状态管理Pinia
    • 项目国际化vue-i18n
    • 使用vite搭建vue3+TS项目及基础配置
    • 使用vue-cli脚手架搭建vue3项目踩坑
    • vue3之使用vite搭建组件库
  • 《Vue》笔记
  • Vue3
心欲无痕
2022-03-22

组件内导航守卫

在以前 vue2.x 中使用组件内的导航守卫,都是直接 beforeRouteEnter,beforeRouteLeave,beforeRouteUpdate。
而在 vue3.x 语法糖中使用 beforeRouteEnter 必须这样,新建一个 script 标签:

<script lang="ts">
export default {
  beforeRouteEnter(to, from, next) {
    next()
  }
}
</script>
1
2
3
4
5
6
7

beforeRouteLeave 跟 beforeRouteUpdate 则可以在 setup 语法糖中使用:

<script setup lang="ts">
import {onBeforeRouteLeave, onBeforeRouteUpdate} from 'vue-router'

onBeforeRouteLeave ((to, from) => {
  console.log('onBeforeRouteLeave-from', from)
  console.log('onBeforeRouteLeave-to', to)
})

onBeforeRouteUpdate((to, from, next) => {
  console.log('更新了')
  next()
})
</script>
1
2
3
4
5
6
7
8
9
10
11
12
13
编辑 (opens new window)
上次更新: 7/1/2024, 4:56:33 PM
eslint报错汇总
vue3.0与vue3.2对比

← eslint报错汇总 vue3.0与vue3.2对比→

Theme by Vdoing
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式