Vue 라우터가 쿼리 매개변수를 삭제합니다.
<p>Nuxt2/Vue2를 사용하고 있는데 웹사이트를 생성할 때 쿼리 매개변수를 가져오는 데 문제가 있습니다. </p>
<p>Contentful에서 다음과 같은 항목을 사용하여 nuxt 구성에서 내 URL을 만들었습니다. </p>
<pre class="brush:php;toolbar:false;">생성: {
크롤러: 거짓,
비동기 경로() {
const 항목 = (
fetchEntriesByContentType({ contentType: "items" })을 기다립니다.
).map(항목 => {
const 경로 = {
경로: `/items/item/${entry.fields.slug}`,
페이로드: 항목,
}
귀국 경로;
});
반품 품목;
}
}</pre>
<p>콘솔 로그를 실행하고 Nuxt 구성 파일에서 디버깅을 시도하면 /items/item/101?type=book</p>과 같은 매개변수가 포함된 URL이 예상대로 반환됩니다.
<p>그러나 this.$route.path, this.$route.fullPath 또는 this.$route.query 등을 사용하여 Vue 구성 요소에 액세스하려고 하면 "?" 뒤에 반환되지 않습니다. . 예를 들어. 위의 예에서는 항상 /items/item/101</p>
<p>쿼리 매개변수를 포함하려면 nuxt 구성에 무언가를 추가해야 합니까?
정의로 이동하기 위해 this.$route를 클릭하면 vue-router가 설치되어 있지 않아도 node_modules의 vue-router 파일로 이동한다는 것을 알았습니다. 이것이 문제의 원인입니까? </p>