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

139
Vistas
Cómo mostrar un objeto con el valor seleccionado en el menú desplegable

Creé un objeto como se ve a continuación:

 export default { data() { return { language: { "en": { welcomeMsg: "Welcome to New York City" }, "de": { welcomeMsg: "Wilkommen New York Stadt" } }, }; }, };

Y tengo un menú desplegable, la variable seleccionada en el menú desplegable es "lang". Así que cuando ejecuto este código:

 <h6 v-for="l in language"> <div>{{ l.welcomeMsg }}</div> <div>{{lang}}</div> </h6>

La pantalla es así: Bienvenido a la ciudad de Nueva York Wilkommen New York Stadt en en (el valor seleccionado es en en el menú desplegable, por lo que aparece como "en")

Lo que estoy tratando de lograr, quiero poner el estado en la etiqueta h6 y solo quiero mostrar el valor seleccionado en el menú desplegable. Por ejemplo, si 'lang' es 'en', debería mostrar welcomeMsg, que es "Bienvenido a la ciudad de Nueva York". si es de, el otro.

¿Me puede ayudar con esto? ¿Crees que creé mal el objeto?

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Simplemente puede acceder al objeto de idioma por el valor seleccionado

 <h6>{{ language[lang]['welcomeMsg'] }}</h6>

Mira la demostración aquí

about 4 years ago · Juan Pablo Isaza Denunciar

0

Sugerencia: intente usar el complemento vue-I18n para integrar fácilmente las funciones de localización en su aplicación Vue.js.

Demostración de trabajo según OP:

 new Vue({ el: '#app', data: { language: { "en": { welcomeMsg: "Welcome to New York City" }, "de": { welcomeMsg: "Wilkommen New York Stadt" } }, selectedLang: '', updatedMsg: '' }, methods: { updateWelcomeMsg(event) { this.updatedMsg = this.language[event.target.value].welcomeMsg; } } })
 <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script> <div id="app"> <select name="lang" @change="updateWelcomeMsg($event)" v-model="selectedLang"> <option value="en">EN</option> <option value="de">DE</option> </select> <div>{{updatedMsg}}</div> </div>

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