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

435
Visualizações
En Nuxt, ¿cómo pasa datos de diseños a páginas?

Por ejemplo, en mi /layouts/sidebar.vue tengo el siguiente código:

 <template> <div class="mainContainer"> <nuxt :date-sidebar="'This is from sidebar'"/> </div> </template>

Quiero pasar el valor de date-sidebar de los diseños a /pages/Request/index.vue y, finalmente, a /components/RequestTable.vue , pero actualmente lo estoy probando pasando cadenas estáticas con el siguiente código:

 <template> <div> <RequestTable :date-requested="'something'"/> {{ this.dateSidebar }} //data from sidebar that should receive something also tried just {{dateSidebar}} </div> </template> <script> export default{ props:['dateSidebar'] } </script>

Puedo recibir el valor estático de /page/Request/index.vue a mi /components/Request/RequestTable.vue pero no puedo recibir los datos de /layouts/sidebar.vue a mi /pages/Request/index .

Entonces, mi pregunta, como sugiere el título, sería, ¿cómo paso la barra lateral de date-sidebar de /layouts/sidebar.vue a /pages/Request/index .

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

0

Hasta donde yo sé, esto solo funciona con nuxt-link (en páginas así) como se muestra aquí y no nuxt

pages/child.vue

 <template> <nuxt-child :test="'RESOLVE_PLZ'"/> </template>

pages/child/index.vue

 <script> export default { props: ["test"], mounted() { console.log(this.test) // RESOLVE_PLZ } } </script>

Es un poco lógico porque el diseño predeterminado no está realmente dirigido a este tipo de uso. Si necesita algo dinámico, generalmente es al revés (emitir al diseño) o simplemente usar Vuex (principalmente porque no tiene que "emitir" varios componentes).


También podrías hacer algunas cosas ingeniosas como esta.

child.vue

 <template> <div> {{ dateSidebar }} </div> </template> <script> export default { computed: { dateSidebar() { return this.$parent.$attrs['date-sidebar'] } }, } </script>

Pero esto no es tan común, por lo tanto, probablemente no sea la forma de hacerlo.

about 4 years ago · Juan Pablo Isaza Relatório

0

Debe usar los accesorios nuxtChildKey en las propiedades de su hijo. Desde el diseño, vincule nuxt-child-key en lugar de :date-sidebar .

Es posible que desee pasar un objeto en lugar de una cadena para poder pasar más datos. Así que su layout/sidebar se vería así...

 <template> <div class="mainContainer"> <nuxt :nuxt-child-key="'This is from sidebar'"/> </div> </template>

En la página infantil...

 <template> <div> <RequestTable :date-requested="'something'"/> {{ this.dateSidebar }} //data from sidebar that should receive something also tried just {{dateSidebar}} </div> </template> <script> export default{ props:['nuxtChildKey'], mounted(){ console.log(this.nuxtCHildKey, 'nck') } } </script>

Y hay una documentación disponible aquí... nuxt-child-key

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