Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

280
Visualizações
Pasar parámetros de ruta vue.js al componente

Tengo problemas para que un parámetro de ruta pase directamente a un componente. Seguí varios conjuntos de instrucciones en los documentos (incluido el uso de la API de composición como en el siguiente código), pero todavía no estoy definido cuando CourseModule.vue se muestra por primera vez.

Definición de ruta

 { path: '/module/:id', name: 'Course Module', props: true, component: () => import('../views/CourseModule.vue'), },

CourseModule.vue:

 <template> <div class="AppHome"> <CustomerItem /> <CourseModuleItem :coursemodule-id="this.CoursemoduleId"/> </div> </template> <script> import { useRoute } from 'vue-router'; import CustomerItem from '../components/customers/customer-item.vue'; import CourseModuleItem from '../components/coursemodules/coursemodule-item.vue'; export default { setup() { const route = useRoute(); alert(`CourseModule.vue setup: ${route.params.id}`); return { CoursemoduleId: route.params.id, }; }, components: { CustomerItem, CourseModuleItem, }, mounted() { alert(`CourseModule.vue mounted: ${this.CoursemoduleId}`); }, }; </script>

cursomódulo-elemento.vue:

 <template> <div id="module"> <div v-if="module.data"> <h2>Course: {{module.data.ModuleName}}</h2> </div> <div v-else-if="module.error" class="alert alert-danger"> {{module.error}} </div> <Loader v-else-if="module.loading" /> </div> </template> <script> import Loader from '../APILoader.vue'; export default { props: { CoursemoduleId: String, }, components: { Loader, }, computed: { module() { return this.$store.getters.getModuleById(this.CoursemoduleId); }, }, mounted() { alert(`coursemodule-item.vue: ${this.CoursemoduleId}`); this.$store.dispatch('setModule', this.CoursemoduleId); }, }; </script>

El resultado de mis alertas es el siguiente:

Configuración de CourseModule.vue: zzyClJDQ3QAKuQ2R52AC35k3Hc0yIgft

módulo-curso-elemento.vue: indefinido

CourseModule.vue montado: zzyClJDQ3QAKuQ2R52AC35k3Hc0yIgft

Como puede ver, el parámetro de ruta funciona bien en el Vue de nivel superior, pero aún no se pasa al componente.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

sus :coursemodule-id kebab que está pasando al componente CourseModuleItem se convierte en accesorios de ID de módulo de curso en caja coursemoduleId

Prop Casing (camelCase vs kebab-case)

prueba esto

 // coursemodule-item.vue ... props: { coursemoduleId: String, }, ... mounted() { alert(`coursemodule-item.vue: ${this.coursemoduleId}`); this.$store.dispatch('setModule', this.coursemoduleId); },
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda