Vue2 navigate to external url with location.href

前端 未结 3 2005
盖世英雄少女心
盖世英雄少女心 2021-02-12 16:03

I tried to go to \'www.mytargeturl.org\' using router.go, router.push, router.replace and window.location.href to redirect my vuejs app but i always get myVueapp.com/www.mytarge

相关标签:
3条回答
  • 2021-02-12 16:13

    Agreed with the people in other comments. Vue's philosophy is not to solve already solved problems. Same here. Just use an ordinary a tag for the link whenever possible. If you need to go through the router though, use Navigation Guards:

    {
        path: '/redirect',
        beforeEnter(to, from, next) {
            // Put the full page URL including the protocol http(s) below
            window.location.replace("https://example.com")
        }
    }
    
    0 讨论(0)
  • 2021-02-12 16:17

    Found the solution. By adding http in my target url, all is well! Like this window.location = 'http://mytargeturl.org"

    This seems to be universal javascript truth not just vue.

    0 讨论(0)
  • 2021-02-12 16:29

    No need to use navigation guards in this case, cleaner to use dynamic redirect right there in route config

    routes:[
      {
        path: '/redirect-example',
        redirect: (to: Route) => {
          window.location.href = 'http://example.com'
          return '/redirecting' // not important since redirecting
        }
      }
    ]
    
    0 讨论(0)
提交回复
热议问题