javascript - Vuejs - 在对象循环中使用键作为选项值

标签 javascript vue.js

我有一个 colors对象,它完全包含您的想法:

{
  "RD": "Red",
  "BL": "Blue",
  "GR": "Green",
  "YW": "Yellow"
}

我有一个 select创建 <option> 的下拉菜单对于 colors 中的每种颜色对象:

<select v-model="colors">
  <option selected>SELECT A COLOR</select> // default value
  <option v-for="(color, key) in colors">{{ color }}</option>
</select>

这在下拉列表中显示得很好。

  • {{ color }}表达式显示名称,即 'Blue'
  • 如果我改为使用 {{ key }}作为表达式,它将显示为 'BR'

挑战:

  • 我正在努力分配 keyoption value属性

例如:

<option v-for="(color, key) in colors" :key="key">{{ color }}</option>

在这种情况下 key实际上是“Blue”而不是“BR”,并将其切换为 color显示相同的东西。我做错了什么?

最佳答案

通过 :value 设置 value 属性尝试以下操作:

<select v-model="colors">
  <option selected>SELECT A COLOR</select>
  <option v-for="(color, key) in colors" :value="key" :key="key">{{ color }}</option>
</select>

这是一个JSFiddle演示功能。

希望对您有所帮助!

关于javascript - Vuejs - 在对象循环中使用键作为选项值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48591779/

相关文章:

javascript - 使用按钮 onclick 计算正确答案

javascript - 如何在 v-text 中使用条件运算符作为 Vue.Js 组件?

javascript - 使用 Vue 和 Axios 进行投票按钮

javascript - Chrome 扩展中来自 Iframe 的不安全 Javascript 访问

javascript - jQuery:提取部分动态加载的 html

javascript - 一次发送多个嵌入内容

javascript - 将日期时间字符串转换为仅日期获取

javascript - VueJS Router View react Prop 未定义

vue.js - Vuex 存储状态在控制台中未定义,但 Vue 工具显示工作正常

javascript - CSS 动画仅在首次创建时触发