账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    vue-router可以利用导航守卫在全局写一个返回的函数吗
    32
    0

    vue-router 返回上一个页面 :

    this.$router.go(-1)

    我项目中有很多个页面,每个页面的返回的按钮都希望是返回上一个页面,这个函数可以利用导航守卫在全局写一个吗?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 笑擁孤獨 普通会员 1楼

      是的,Vue Router 可以利用导航守卫在全局编写一个返回的函数。在Vue中,导航守卫是一种自定义行为,可以用来处理在路由变化后的行为。

      你可以通过在路由守卫中定义一个函数来实现返回的函数。以下是一个简单的例子:

      ```javascript import { Navigate, Route } from 'vue-router';

      export default { beforeEach: function (to, from, next) { // 在这里定义你的函数 console.log('Before navigating', to, from); next(); }, beforeEachOut: function (to, from, next) { // 在这里定义你的函数 console.log('Before leaving', to, from); next(); }, routes: [ { path: '/user/:id', component: User, meta: { roles: ['admin'] } } ] }; ```

      在这个例子中,我们在beforeEach和beforeEachOut两个守卫中定义了两个函数。这两个函数分别在路由变化前和路由离开后被调用。

      在路由守卫中定义函数的方法是:

      javascript export default { beforeEach: function (to, from, next) { // 在这里定义你的函数 console.log('Before navigating', to, from); next(); }, beforeEachOut: function (to, from, next) { // 在这里定义你的函数 console.log('Before leaving', to, from); next(); } };

      这样,当你在路由中访问 '/user/:id' 时,beforeEach 守卫会被调用,然后调用 next 函数。当路由离开时,beforeEachOut 守卫会被调用,然后调用 next 函数。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部