Home > Web Front-end > JS Tutorial > body text

Vue realizes that the page jumps to the previous page after login. Example sharing

小云云
Release: 2018-01-09 09:49:13
Original
3930 people have browsed it

In development, we often encounter such needs. The user needs to directly click a link to enter a page. After the user clicks the link, a 401 interception will be triggered and returned to the login interface. After logging in, he will jump to the linked page instead of the home page. , how to solve this kind of problem? This article mainly shares with you a function that Vue implements to jump to the previous page after logging in. Friends who need this convenience can learn from it. Hope it helps everyone.

Let’s first talk about a few APIs we need to use:

1.router.currentRoute: The current routing information object, we can get the parsed URL through router.currentRoute.fullPath, Contains the full path of query parameters and hash. If the route of the page to be accessed has a name, the name of the current route can be obtained through router.currentRoute.name.

2.router.replace: The function is the same as router.push, but it does not add new records to the history, but replaces the current history record.

Since everyone’s code is written differently, I will not include my specific implementation code, but briefly introduce the idea:

1. After the user clicks on the link, the target to jump to routing page, then trigger the 401 interceptor and return to the login page:


//401拦截
if(status == "401"){
  router.push("/login")   
}
Copy after login

2. We can save the target link in the url when intercepting 401:


if (status == 401) {
   //判断当前的路由是否是目标路由
   if(router.currentRoute.name == "target"){
    //跳转回login路由,并把目标路由的url路径保存在login的query中
    router.replace({
     name:"login",
     query: {redirect: router.currentRoute.fullPath}
    })
   }else{
    /* 普通401拦截直接返回到登录页面 */
    router.push('/login');
   }
  }
Copy after login

3. After clicking login, use the query saved on the url to jump directly back to the target page


router.push({path:decodeURIComponent(url)});
Copy after login

Related recommendations:

How to use WeChat Xiaocheng to click text to realize the page jump function

Answers to questions about html page jump passing parameters

HTML page jump and parameter passing issues

The above is the detailed content of Vue realizes that the page jumps to the previous page after login. Example sharing. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template