Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

264
Vistas
Recorriendo el objeto hasta encontrar el parámetro (VueJS)

tengo estos datos:

 example: { "jd5jasjs71kdskzaslsdfsdfsdfsdf" : { param1: '', param2: '', param3: '', param4: 'xx', param5: 'xx', advancedParams: { aone: '', atwo: '', athree: '', afour: 'blablabla' } },

Tengo este código que funcionó bien, hasta que descubrí que necesitaré otro conjunto de datos en el objeto para implementarlos como campos de formulario en etapas posteriores del formulario que estoy creando:

 if (this.example.hasOwnProperty(this.someKey)) { for (const [key, value] of Object.entries(this.example[this.someKey])) { this.newInputs[key] = value; } }

someKey + newInputs (objeto) son de Data()

Lo que estoy tratando de lograr aquí es dividir los campos en dos nuevos objetos que se representarán más tarde como campos de formulario.

Ejemplo:

 newInputs: { param1: '', param2: '', param3: '', param4: 'xx', param5: 'xx', } aParams: { aone: '', atwo: '', athree: '', afour: 'blablabla' }

Pude hacerlo pero no 100% bien, pude dividirlo en dos objetos pero "advancedParams" también entró en el primer objeto como un campo (que no quiero que sea)

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Prueba como el siguiente fragmento:

 new Vue({ el: '#demo', data() { return { newInputs: {}, aParams: {}, someKey: 'jd5jasjs71kdskzaslsdfsdfsdfsdf', example: { "jd5jasjs71kdskzaslsdfsdfsdfsdf" : { param1: '', param2: '', param3: '', param4: 'xx', param5: 'xx', advancedParams: { aone: '', atwo: '', athree: '', afour: 'blablabla' } } } } }, methods: { splitData() { if (this.example.hasOwnProperty(this.someKey)){ for (const [key, value] of Object.entries(this.example[this.someKey])){ if(typeof value !== 'object'){ this.newInputs[key] = value; } else { this.aParams = value; } } } } }, mounted() { this.splitData() } }) Vue.config.productionTip = false Vue.config.devtools = false
 <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script> <div id="demo"> <p>newInputs = {{ newInputs }}</p> <p>aParams = {{ aParams }}</p> </div>

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda