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

203
Vistas
La segunda entrada sigue mostrando el mismo valor de entrada aunque el valor de la primera entrada se inserta de manera diferente cada vez

Esta es una pregunta de seguimiento de la pregunta que hice antes:

Llene automáticamente la segunda entrada después de que se complete el primer valor de entrada en función de la condición de rango if/else. A continuación se muestra la respuesta proporcionada por @Muge, que sigo para resolverla.

https://stackoverflow.com/a/70433191/16136444

Pero encontré un problema, la segunda entrada sigue mostrando el mismo valor de entrada aunque el valor en la primera entrada se inserta de manera diferente cada vez. Sigue dándome el valor de "G1" sin importar el valor numérico que puse en la primera entrada.

La segunda entrada siempre muestra G1

¿Qué podría estar mal con mi código?

plantilla vue

 <v-col cols="12" sm="6" md="6"> <label style="font-size: 1.5rem;">Estimated Contract Value (RM)</label> <v-text-field v-model="editedItem.EstimatedContractValue" outlined @blur="updateWorksGrade" ></v-text-field> </v-col> <v-col cols="12" sm="6" md="6"> <label style="font-size: 1.5rem;">Works Grade</label> <v-text-field v-model="editedItem.WorksGrade" outlined readonly :items="worksgrade" ></v-text-field> </v-col>

guión vue

 data: () => ({ editedItem: { EstimatedContractValue: "", WorksGrade: "", }, worksgrade: [], }), methods: { updateWorksGrade() { this.worksgrade = []; let x = []; if ( x < 200000) { this.editedItem.WorksGrade = "G1"; } else if ( x > 200000 && x <= 500000) { this.editedItem.WorksGrade = "G2"; } else if ( x > 500000 && x <= 1000000) { this.editedItem.WorksGrade = "G3"; } else if ( x > 1000000 && x <= 3000000) { this.editedItem.WorksGrade = "G4"; } else { alert("oi lebih dah ni!") } }, },
about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Encontré el problema. Todavía quiero publicarlo en caso de que alguien tenga el mismo problema conmigo en el futuro.

Cambié let x = []; let x = this.editedItem.EstimatedContractValue .

Ahora, cualquiera que sea el valor numérico que coloque en la primera entrada, la segunda entrada solo mostrará el valor en la condición que establezca.

 data: () => ({ editedItem: { EstimatedContractValue: "", WorksGrade: "", }, worksgrade: [], }), methods: { updateWorksGrade() { this.worksgrade = []; let x = this.editedItem.EstimatedContractValue; if ( x < 200000) { this.editedItem.WorksGrade = "G1"; } else if ( x > 200000 && x <= 500000) { this.editedItem.WorksGrade = "G2"; } else if ( x > 500000 && x <= 1000000) { this.editedItem.WorksGrade = "G3"; } else if ( x > 1000000 && x <= 3000000) { this.editedItem.WorksGrade = "G4"; } else { alert("oi lebih dah ni!") } }, },
about 4 years ago · Santiago Trujillo Denunciar

0

El valor de x siempre es menor que 200000, por lo que cada vez que se llama a la función, el valor de x es el mismo

about 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