에 방향을 바꾸고 싶습니다 Vue.js
바닐라 자바 스크립트와 비슷한
window.location.href = 'some_url'
Vue.js에서 어떻게 이것을 달성 할 수 있습니까?
답변
당신이 사용하는 경우 vue-router
, 당신은 사용해야하는 router.go(path)
특정 경로로 이동합니다. 를 사용하여 구성 요소 내에서 라우터에 액세스 할 수 있습니다 this.$router
.
그렇지 않으면 window.location.href = 'some url';
단일 페이지가 아닌 앱에 적합합니다.
편집 : router.go()
VueJS 2.0에서 변경되었습니다. router.push({ name: "yourroutename"})
또는 router.push("yourroutename")
지금 사용하여 리디렉션 할 수 있습니다 .
https://router.vuejs.org/guide/essentials/named-routes.html
답변
문서에 따르면 router.push는 선호하는 방법처럼 보입니다.
다른 URL로 이동하려면 router.push를 사용하십시오. 이 메소드는 새 항목을 히스토리 스택으로 푸시하므로 사용자가 브라우저 뒤로 단추를 클릭하면 이전 URL로 이동합니다.
출처 : https://router.vuejs.org/en/essentials/navigation.html
참고 : Webpack 및 구성 요소 설정, 단일 페이지 앱 (Main.js를 통해 라우터를 가져 오는 위치)에서 다음과 같이 말하여 라우터 기능을 호출해야했습니다.
this.$router
예 : 조건이 충족 된 후 “홈”이라는 경로로 리디렉션하려는 경우 :
this.$router.push('Home')
답변
그냥 사용하십시오 :
window.location.href = "http://siwei.me"
vue-router를 사용하지 마십시오. 그렇지 않으면 ” http://yoursite.com/#!/http://siwei.me ” 로 리디렉션됩니다
내 환경 : node 6.2.1, vue 1.0.21, Ubuntu.
답변
컴포넌트 스크립트 태그 안에 있으면 라우터를 사용하여 다음과 같은 작업을 수행 할 수 있습니다
this.$router.push('/url-path')
답변
죽은 간단한 라우팅 :
this.$router.push('Home');
답변
이것도 시도해 볼 수 있습니다 …
router.push({ name: 'myRoute' })
답변
다른 페이지로 라우팅하려는 경우
this.$router.push({path: '/pagename'})
당신은 매개 변수와 함께 라우팅하려는 경우
this.$router.push({path: '/pagename', param: {param1: 'value1', param2: value2})