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

127
Visualizações
No se pudo resolver el componente al anidar varios niveles

Estoy creando una aplicación de encuestas en Vue3 con la siguiente estructura:

  • Encuesta
    • Sección
      • Pregunta (Texto)
      • Pregunta (área de texto)
      • Número de pregunta)
      • etc...
      • Pregunta (Repetidor)
        • Fila de repetidores
          • Pregunta (Texto)
          • Pregunta (área de texto)
          • Número de pregunta)
          • etc...
          • Pregunta (Repetidor)
            • Fila de repetidores
              • etc...

Estos son todos los componentes con cada uno nombrado exactamente como lo describí anteriormente.

La sección comienza a recorrer el primer nivel de preguntas:

 <div v-for="question in questions" :key="question.id" v-show="question.visible"> <Question ... /> </div>

Cada pregunta tiene un campo principal (que es solo una etiqueta) y llama al nombre correspondiente de la base de datos:

 <template> <Field :label="title"> <component :is="getComponentByType(type.name)" ... /> </Field> </template> export default { name: 'Question', methods: { getFieldComponentByType(name) { let componentName = '' switch (name) { case 'number': componentName = 'InputNumber' break; case 'datetime': componentName = 'InputDateTime' break; case 'textarea': componentName = 'InputTextarea' break; case 'repeater': componentName = 'Repeater' break; ... etc default: componentName = 'InputText' break; } return componentName } } }

Entonces también puede haber una pregunta repetida que simplemente recorre las preguntas secundarias.

 <div v-for="question in questions" :key="question.id" v-show="question.visible"> <Question ... /> </div>

Para la pregunta del repetidor, recibo el siguiente error de vue:

 [Vue warn]: Failed to resolve component: Question If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. at <Repeater required=false formId=125 name=393 ... >

Lo extraño es que cuando construyo esta estructura en vue2 funciona pero en vue3 no. ¿Por qué vue3 tiene conflictos cuando recupero componentes en una estructura anidada? No quiero tener que duplicar mi código, por ejemplo, en RepeaterQuestion.

about 4 years ago · Juan Pablo Isaza
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