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

143
Visualizações
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 Respostas
Responde à pergunta

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 Relatório

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 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