웹 프론트엔드 JS 튜토리얼 vue-router3.0 버전 router.push에 대한 완벽한 솔루션으로 페이지를 새로 고칠 수 없습니다

vue-router3.0 버전 router.push에 대한 완벽한 솔루션으로 페이지를 새로 고칠 수 없습니다

May 30, 2018 pm 02:44 PM
버전

이번에는 페이지를 새로 고칠 수 없는 vue-router3.0 버전의 완벽한 솔루션을 소개합니다. 주의할 점은 무엇인가요? 함께 살펴보겠습니다. github의 vue-router에서 동일한 문제를 발견했습니다: 버전 3.0.1은 라우터 인스턴스를 통과할 수 없습니다

어제 일부

경로

가 정상적으로 점프할 수 없다는 것을 발견했습니다. 인스턴스화 후 라우터는 this.$router.push를 직접 사용하는 대신 .push입니다. router.push 이후에 URL이 변경되지만 페이지가 새로 고쳐지지 않는 경우 적절한 화면이 나타나기 전에 수동으로 새로 고쳐야 합니다.
package.

json

을 살펴봤습니다. 내 vue와 axios에는 버전 번호가 명시되어 있지 않지만 vue-router에서는 이전에는 작동했지만 지금은 작동하지 않는다는 것이 어떻게 가능합니까? 그런 다음 npm view vue-router를 사용하여 확인했는데 내가 사용하고 있는 버전이 더 이상 package.json의 버전이 아니어서 며칠 전에 npm을 업데이트했을 수도 있다는 결론을 내렸습니다!

(앞으로 함부로 업데이트하지 마세요!)

새 버전이 왜 작동하지 않는지 정확히 모르겠습니다.

가장 간단한 해결책은 물론 router.push를 this.$router.push

로 직접 변경하는 것입니다. 하지만 이것이 가능하다면 애초에 구성 요소에서 다른 Router를 인스턴스화해야 하는 이유는 무엇입니까?

분명히 이것은 어떤 곳에서는 vue가 아니기 때문에 vue를 인스턴스화한 다음 vue.$router를 사용해도 괜찮습니까?

물론 대답은 '아니요'입니다. 왜냐하면 이 vue와 다른

장소의

vue는 동일 object이어서는 안 되기 때문입니다. 그러면 궁극적인 해결책은 다음과 같습니다.

창에 전역 vue의 라우터를 추가합니다. 즉, main.js에서 사용합니다.

window.router=router
로그인 후 복사

그러면 다른 곳에서는 router.push 등의 라우터 메서드를 사용할 수 있습니다. .

이유 분석:

인스턴스 이후의 라우터가 페이지를 새로 고칠 수 없는 이유는 이것과 동일하지 않기 때문일 것입니다. 이전 버전에서는 $router를 직접 사용할 수 있었습니다. 이렇게 싱글턴을 사용해야 합니다.

더 이상 싱글톤을 사용하지 않는 이유를 어떻게 알 수 있나요?

이 기사의 사례를 읽은 후 방법을 마스터했다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!

추천 자료:

Angular 라우팅에서 경로 가드를 사용하는 방법


React가 반응 라우터 라우팅에서 로그인 확인 제어를 구현하는 방법

위 내용은 vue-router3.0 버전 router.push에 대한 완벽한 솔루션으로 페이지를 새로 고칠 수 없습니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

numpy 버전을 빠르게 확인하는 방법 numpy 버전을 빠르게 확인하는 방법 Jan 19, 2024 am 08:23 AM

numpy 버전을 빠르게 확인하는 방법

메이븐 버전 확인하는 방법 메이븐 버전 확인하는 방법 Jan 17, 2024 pm 05:06 PM

메이븐 버전 확인하는 방법

Linux에서 컬 버전을 업데이트하는 방법에 대한 튜토리얼입니다! Linux에서 컬 버전을 업데이트하는 방법에 대한 튜토리얼입니다! Mar 07, 2024 am 08:30 AM

Linux에서 컬 버전을 업데이트하는 방법에 대한 튜토리얼입니다!

pip 버전을 업데이트하는 간단한 단계: 1분 안에 완료 pip 버전을 업데이트하는 간단한 단계: 1분 안에 완료 Jan 27, 2024 am 09:45 AM

pip 버전을 업데이트하는 간단한 단계: 1분 안에 완료

Kirin 운영 체제 버전과 커널 버전을 확인하세요. Kirin 운영 체제 버전과 커널 버전을 확인하세요. Feb 21, 2024 pm 07:04 PM

Kirin 운영 체제 버전과 커널 버전을 확인하세요.

Windows에 Python을 쉽게 설치하는 방법은 두 가지 방법 중에서 선택할 수 있습니다. Windows에 Python을 쉽게 설치하는 방법은 두 가지 방법 중에서 선택할 수 있습니다. Feb 18, 2024 pm 04:57 PM

Windows에 Python을 쉽게 설치하는 방법은 두 가지 방법 중에서 선택할 수 있습니다.

PHP 버전 NTS의 의미와 차이점 해석 PHP 버전 NTS의 의미와 차이점 해석 Mar 27, 2024 am 11:48 AM

PHP 버전 NTS의 의미와 차이점 해석

설치된 Oracle 버전을 쉽게 확인하는 방법 설치된 Oracle 버전을 쉽게 확인하는 방법 Mar 07, 2024 am 11:27 AM

설치된 Oracle 버전을 쉽게 확인하는 방법

See all articles