source

URL에서 쿼리 문자열 매개 변수를 제거하는 중

factcode 2022. 8. 27. 09:23
반응형

URL에서 쿼리 문자열 매개 변수를 제거하는 중

앵귤러에서 오다JS Vue.js 2에서도 충분히 쉬울 거라고 생각했어요.하지만 Vue에서는 이것이 설계상 어려운 것 같습니다.

각진 상태JS 할 수 있어$location.search('my_param', null);실제로 변하게 될 것이다.https://mydomain.io/#/?my_param=872136안으로https://mydomain.io/#/.

Vue에서 나는 시도했다.this.$router.replace('my_param',null);단, 이 방법은https://mydomain.io/#/?my_param=872136->https://mydomain.io/#/my_parammy_discloss는 그대로 둡니다.

Vuejs2에는 Url에서 쿼리 파라미터를 삭제할 수 있는 기능이 없습니까?이를 위해서는 플레인 JS에 의존해야 합니까?

router.replace()는 브라우저 이력 스택에서 현재 URL을 삭제하고 해당 URL에 전달한 인수 루트로 대체합니다.

실제 구문은 다음과 같습니다.router.replace(url_location, onComplete, onAbort).

지금 하고 있는 일은router.replace(my_param, null)이력 스택에서 현재 URL을 삭제하고 다음으로 대체합니다.'my_param'또,onComplete전달하고 있는 콜백null

다음과 같이 합니다.

this.$router.replace('/')

프로그램 탐색에 대한 자세한 정보

쿼리 파라미터가 여러 개 있는 경우 이들 중 하나를 삭제하는 올바른 방법은 다음과 같습니다.

const query = Object.assign({}, this.$route.query);
delete query.my_param;
this.$router.replace({ query });

@DaveIdito의 코멘트 답변은 몇 번인가 저에게 소중했습니다.적절한 주의를 끌기 위해 그것을 답으로 추가하는 것.

다시 로드하거나 기록을 변경하지 않고 모든 쿼리 매개 변수만 제거하려면 다음을 사용합니다.

this.$router.replace({'query': null});

언급URL : https://stackoverflow.com/questions/45234567/removing-query-string-parameter-from-url

반응형