Nuxt 3에서 URL 쿼리 매개변수 사용
Nuxt 3에서 URL 쿼리 매개변수 사용하기
This is a continuation of my previous post on how to set query parameters in Nuxt 3. We'll be continuing with the code written there so make sure you check it out.
우리가 해결하고 있는 문제
localhost:3000/test?streamer=faker
처럼 보이는 URL을 남겨두었습니다. 이것은 훌륭하지만 이상적이지 않은 몇 가지 사례가 포함되어 있습니다.
URL 매개변수가 입력의 v-모델을 사용하여 업데이트되고 있기 때문에 페이지를 새로 고치면 해당 로컬 상태와 twitchStreamer
에 저장된 값이 손실됩니다.
Nuxt에서 useRoute 사용하기
NuxtJS는 라우팅 로직의 대부분을 vue-router에 의존합니다.
이 예에서는 Nuxt 3에 내장된 새로운 기능 중 하나인 Composition API를 사용하고 있습니다.
우리의 경로를 얻기 위해 우리는 useRoute()
를 우리의 setup()
에 사용합니다. Nuxt 3 자동 가져오기useRoute()
를 통해 명시적 또는 암시적을 선택할 수 있습니다.
setup() {
const route = useRoute()
}
경로가 있으면 쿼리 매개변수에 대한 액세스를 포함하여 vue-router
의 모든 이점이 잠금 해제됩니다!
쿼리 매개변수 유지
경로에 액세스하면 streamer=
를 사용하여 쿼리 변수( = in route.query.streamer
뒤에 있는 것)를 확인할 수 있습니다.
쉬운!
이제 twitchStreamer
변수가 있는 ternary operator과 함께 이 논리를 사용합니다.
const twitchStreamer = ref(route.query.streamer ? route.query.streamer : '')
이제 페이지를 탐색하거나 새로 고칠 때마다 twitchStreamer
route
에 스트리머 쿼리 매개변수가 있는지 확인합니다.
그렇다면 twitchStreamer
매개변수 값이 포함됩니다. 그렇지 않으면 빈 문자열이 됩니다.
최종 코드 스니펫
<!-- pages/example.vue -->
<template>
<input v-model="twitchStreamer" />
</template>
<script>
setup() {
const route = useRoute()
const router = useRouter()
const twitchStreamer = ref(route.query.streamer ? route.query.streamer : '')
watch(twitchStreamer, (twitchStreamer, previous) => {
router.push({
path: '/test',
query: { streamer: twitchStreamer },
})
})
return { twitchStreamer }
</script>
Reference
이 문제에 관하여(Nuxt 3에서 URL 쿼리 매개변수 사용), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/codybontecou/using-url-query-params-in-nuxt-3-43kc
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
This is a continuation of my previous post on how to set query parameters in Nuxt 3. We'll be continuing with the code written there so make sure you check it out.
setup() {
const route = useRoute()
}
const twitchStreamer = ref(route.query.streamer ? route.query.streamer : '')
<!-- pages/example.vue -->
<template>
<input v-model="twitchStreamer" />
</template>
<script>
setup() {
const route = useRoute()
const router = useRouter()
const twitchStreamer = ref(route.query.streamer ? route.query.streamer : '')
watch(twitchStreamer, (twitchStreamer, previous) => {
router.push({
path: '/test',
query: { streamer: twitchStreamer },
})
})
return { twitchStreamer }
</script>
Reference
이 문제에 관하여(Nuxt 3에서 URL 쿼리 매개변수 사용), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/codybontecou/using-url-query-params-in-nuxt-3-43kc텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)